Yanesh Tyagi writes …

August 25, 2009

Keyboard Shortcuts for Windows Live Mail

Filed under: Tips, Web Technology — yaneshtyagi @ 8:40 am
Tags: , ,

I hate using mouse on my laptop. It just slows down my work. If you are also like me, I have some tips for you. Here is a list of keyboard shortcuts for Windows Live Mail.

Shortcut keys of windows live mail

New Email ctrl+N
New Photo email ctrl+shift+P
Event ctrl+shift+E
News ctrl+shift+W
COntact ctrl+shift+N
Folder ctrl+shift+D
Open ctrl+o
Create New Folder ctrl+shift+D
Print ctrl+P
FInd message ctrl+shift+F
Move to Folder ctrl+shift+V
Delete ctrl+D
View Blocked Image F9
Mark as read ctrl+Q
Mark conversation as read ctrl+T
Mark all as read ctrl+shift+A
Message in HTML Alt+shift+H
Previous Message ctrl+<
Next Message ctrl+>
Next Unread Message ctrl+U
Next Unread Conversation ctrl+shift+U
*Next Unread Folder ctrl+J
Go to folder ctrl+Y
Go to mail ctrl+shift+J
Go to Calendar ctrl+shift+X
Go to COntcts ctrl+shift+C
Go to Feed ctrl+shift+K
Go to News Group ctrl+shift+L
Sync all mail messages F5
Sync everything ctrl+F5
Manage News Group ctrl+W
Reply ctrl+R
Reply to all ctrl+shift+R
Reply to group ctrl+G
Forward ctrl+F
Mark as junk ctrl+alt+J
Flag Message Alt+a+a
Watch conversation Alt+a+t
Ignore conversation Alt+a+i
Save as Alt+f+a
Save attachments Alt+f+v
Save as stationary Alt+f+t
Import Message Alt+f+i+m
Export message Alt+f+e+m
Export Accounts Alt+f+e+a
Find text in the message Alt+e+f+t
Copy to folder Alt+e+o
Empty Deleted Items Alt+e+y
Mark as unread Alt+e+n
Sort by assending Alt+v+b+a
sort by descending Alt+v+b+d
View by conversation

(Note: When you view by conversation, the reading pane comes to bottom. To move reading pane to the right ALT+V+L; ALT+G; Enter.)

Alt+v+v
Expend conversation Alt+v+x
Collapse Conversation Alt+v+a
Mail rules Alt+t+r+m
News rules Alt+t+r+n
Manage feed Alt+t+F
Manage IMAPI folders Alt+t+I
Manage Accounts Alt+t+c
Manage Safety Options Alt+t+t
Forward as attachment Alt+a+d
Add sender to safe list Alt+a+j+s
Add senders domain to safe list Alt+a+j+o
Add sender to block list Alt+a+j+b
Add domain to block list Alt+a+j+d
Create rule from message Alt+a+e
Flag Message Alt+a+f
Recombine Attachments Alt+a+m

Related Posts:

Emoticon Keyboard Shortcut For Live Mail And Live Messenger

Follow_Me_On_Tweeter_For_BlogTweet_This4

Technorati Tags: ,
Digg This

August 18, 2009

Firefox redirects to urlseek.vms.net

Filed under: Technology, Web Technology — yaneshtyagi @ 1:00 pm
Tags: ,

Since last week I was tired with this malware. Whenever, I tried to open some incorrect URL, I first get the error 404 page but within the same moment Firefox redirected me to urlseek.vms.net site.

Suspecting this to be a behaviour of any add-on, I removed all of them. But this did not solve my problem. Then I thought that this may be a virus or some spyware. I have McAfee installed on my laptop. I scanned my laptop thoroughly. But it did not report any infection or other issue.

After little googling, I was confirmed that this is a malware. My McAfee was not able to detect this. I went into different forum and on one of the forum, I found the solution. I needed to shutdown the Firefox and forgot to note down the URL of the forum and name of the person who posted the solution. But the credit goes to that unknown helper.

Fix to the problem:

  1. Go to the following folder (on windows system) C:\Program Files\Mozilla Firefox\extensions. On other machines, you may go down to the folder where Firefox is installed and then go to the extensions folder within the Firefox folder.
  2. The will be a Search Settings (or search@settings) folder in within the extension folder. Delete this folder. If some access error is occurred, shut down the Firefox (close all open Firefox windows) and try again.
  3. Run the Firefox again and type some gibberish URL. If you are seeing normal page load error page, or the Google search page (if you have Google toolbar installed), you problem has been fixed.
  4. If the problem still persist, shut down the Firefox again and delete whole extensions folder. You may loose some of your settings but you problem will be fixed.

Follow_Me_On_Tweeter_For_BlogTweet_This_For_Blog

August 1, 2009

Google Toolbar stopped working with Firefox 3.5 – Fix

Filed under: Technology, Web Technology — yaneshtyagi @ 12:16 pm
Tags: ,

Just updated my Firefox from 3.0.12 to 3.5.1 version. Initially things seem to be smooth but soon I realized that Google Toolbar is not working. You press any button on the toolbar and nothing happened. It only displays a tiny callout icon on the screen at the mouse pointer position and it disappeared as you move mouse. I tried to click this icon but nothing happened.

Then I googled about the issue. There were many posts on the Mozilla support site but nobody has mentioned any fix. Then I got one link of Google’s support site. In the forum, somebody suggested to uninstall and re-install the toolbar. I did exactly and it worked. And the good thing is that I retained my custom settings of buttons. Seems that Google stores these settings on it’s servers.

So here are the steps to uninstall and reinstall the Google Toolbar:

  1. Open Add-ons dialog window of Mozilla Firefox. From the menu bar click on the Tools and select Add-ons.  This will open Add-ons window.image image
  2. Click on the Extensions tab. (image )
  3. Choose Google Toolbar for Firefox. You may need to scroll down the window.
  4. When you select the Google Toolbar, its row expands and shows you three buttons. Click on uninstall. This will uninstall the Google toolbar and then prompt you to restart the Firefox.
  5. Restart your browser. Click on the restart link on the Add-ons window. You can also close the window and then close your browser.
  6. When your browser is opened (or you may need to open Firefox again if closed manually), make sure that Google toolbar is not there.
  7. Open the Add-ons window again (see Step 1).
  8. Click on the Get Add-ons button. (image )
  9. In the search box type “Google Toolbar” and hit Enter.
  10. It will show you many search results. Select Google Toolbar from the search results. You me need to scroll down the window.
  11. Click in the Google Toolbar row. The row will expend and provide you a button “Add to Firefox”. This button is usually at the extreme right on the window. Sometimes you may have to scroll the window to the right.
  12. Click on the “Add to Firefox” button.
  13. When prompted, click on the install.
  14. Restart Firefox.

And you are done. Your Google Toolbar will now work fine.

 

Technorati Tags: ,

December 2, 2008

Dynamically applying CSS based on browser’s resolution

Filed under: Technology, Web Technology — yaneshtyagi @ 11:12 am

Sometimes we need to change the layout of the page based on the resolution of the client machine or browser. For example, in one web site, I was required to change the position of the navigation bar. If the page is displayed in 800×600 mode, navigation bar has to be displayed on the right hand side. In case of 1024×768 resolution, it has to be on the left hand side. Even the appearance, font and background color, has to be changed for each position. So I did this using the JavaScript and CSS.

This post describes how to change the CSS based on the resolution of the browser. This is a step by step walk through.

Step 1 – Create CSS for 800×600 resolution

Create a new CSS file and name it 800.css. This CSS file will have styles for the 800×600 resolution. For this example I have chosen the background color as green and position of navigation bar on right hand side. Copy and paste (or type) the following code into this file and save this.

body{ background: #FF9999;}

.navbar{ float:right;}

 

Step – 2 Create CSS for 1027×768 resolution

Create another CSS file for the 1024x768 resolution and name it as 1024.css. 

I have chosen the background color to be red and position of the navigation bar on the left hand side.

The code for this file is as below:

body{     background: #99FF99; }

.navbar{     float:left; }

 

Step – 3 Create HTML File

Create a HTML file. This HTML file will import both the style sheets i.e 800 and 1024.

The code for this file is given below.

<HTML>

<HEAD>

    <TITLE>Dynamic Layout</TITLE>

    <link rel="stylesheet" type="text/css" href="800.css" id="800">

    <link rel="stylesheet" type="text/css" href="1024.css" id="1024">

</HEAD>

<BODY>

    This is the test for dynamic layout.

    <div class="navbar">

        <a href="#"> Navbar Link 1</a><br />

        <a href="#"> Navbar Link 2</a><br />

        <a href="#"> Navbar Link 3</a><br />

        <a href="#"> Navbar Link 4</a><br />

    <div>

</BODY>

</HTML>

 

Don’t forget to provide the Ids in the link tag. These Ids will be used in JavaScript to apply particular CSS. In the Body there is a div which displays the navigation bar. Class ‘navbar’ is applied on this div.

 

Step – 4 Insert JavaScript to handle resolution

The trick to change the CSS at client side is implemented through the JavaScript. Insert the below code into the ‘head’ section of HTML file created in the step 3.

<script type="text/javascript">

    if (window.innerWidth <= 800){

        document.getElementById("1024").disabled=true;

        document.getElementById("800").disabled=false;

    }

    else{

        document.getElementById("800").disabled=true;

        document.getElementById("1024").disabled=false;

    }

</script>

Window.innerWidth is JavaScript that provides the width of the browser window that is available to the HTML page. Based on the value of innerWidth property, I have enabled the desired CSS file and disabled the other.

 

The complete file should look like:

<HTML>

<HEAD>

    <TITLE>Dynamic Layout</TITLE>

    <link rel="stylesheet" type="text/css" href="800.css" id="800">

    <link rel="stylesheet" type="text/css" href="1024.css" id="1024">

    <script type="text/javascript">

        if (window.innerWidth <= 800){

            document.getElementById("1024").disabled=true;

            document.getElementById("800").disabled=false;

        }

        else{

            document.getElementById("800").disabled=true;

            document.getElementById("1024").disabled=false;

        }

    </script>

</HEAD>

<BODY>

    This is the test for dynamic layout.

    <div class="navbar">

        <a href="#"> Navbar Link 1</a><br />

        <a href="#"> Navbar Link 2</a><br />

        <a href="#"> Navbar Link 3</a><br />

        <a href="#"> Navbar Link 4</a><br />

    <div>

</BODY>

</HTML>

 

Save all the files and run the HTML File. Now change the resolution and run the file again.

October 21, 2008

Getting Browser Information and Capabilities in ASP.Net

Filed under: .Net, Programming, Web Technology — yaneshtyagi @ 7:40 am
Tags:

While developing a web site or web application, one need to keep in mind the features supported by different browsers. This is very unfortunate that there is no industry standard in the browser market. Fortunately ASP.net provides HttpBroserCapability class to determine the browser type and features supported by the browser.

The browser property of request object returns the object of HttpBrowserCapability object. This object has several properties which provide the information about the browser type, version and features supported by this.

Following C# code explains how you can use HttpBrowserCapability class to fetch browser information.

private void btnBrowserInfo_Click(object sender, System.EventArgs e)
{
System.Web.HttpBrowserCapabilities browser = Request.Browser;
string s = “Browser Capabilities\n”
+ “Type = “                    + browser.Type + “\n”
+ “Name = “                    + browser.Browser + “\n”
+ “Version = “                 + browser.Version + “\n”
+ “Major Version = “           + browser.MajorVersion + “\n”
+ “Minor Version = “           + browser.MinorVersion + “\n”
+ “Platform = “                + browser.Platform + “\n”
+ “Is Beta = “                 + browser.Beta + “\n”
+ “Is Crawler = “              + browser.Crawler + “\n”
+ “Is AOL = “                  + browser.AOL + “\n”
+ “Is Win16 = “                + browser.Win16 + “\n”
+ “Is Win32 = “                + browser.Win32 + “\n”
+ “Supports Frames = “         + browser.Frames + “\n”
+ “Supports Tables = “         + browser.Tables + “\n”
+ “Supports Cookies = “        + browser.Cookies + “\n”
+ “Supports VBScript = “       + browser.VBScript + “\n”
+ “Supports JavaScript = “     +
browser.EcmaScriptVersion.ToString() + “\n”
+ “Supports Java Applets = “   + browser.JavaApplets + “\n”
+ “Supports ActiveX Controls = ” + browser.ActiveXControls
+ “\n”;
txtBrowserInfo.Text = s;
}

I have placed one button on the aspx page and named it as Browser Information. The id of the button is btnBrowserInfo. On the click event of the button, I wrote the above code.

I also placed a TextBox on the page and named it as txtBrowserInfo.

First I initialized an HttpBrowserCapability object named browser with the Request object’s browser property. I fetched the different property of browser and concatenate these into a string variable. Finally I displayed the concatenated string into the text box.

kick it on DotNetKicks.com

September 27, 2008

My First ASP.Net MVC Appliacation

Filed under: .Net, Programming, Technology, Web Technology — yaneshtyagi @ 4:50 pm
Tags: ,

I was thinking about MVC since I read first post on ScottGu’s blog. Yesterday, on Friday night, I decided to create my first MVC applications. I downloaded Visual Web Developer 2008 Express Edition 2008 last night. That 128 MB download took quite a long time to download. Then I downloaded MVC preview 5. After successful installation of MVC, I was ready to fly…

Finding a suitable example on the web:
Before starting develop a new MVC project,  I needed a good example. After searching the web for a while, I found two links that seems to be useful.

First was a 4 part tutorial written by ScottGu. I was a detailed introduction to MVC framework and how it works. I was like a step by step DIY guide. Scott demonstrated how to create a complete e-commerce site using MVC framework.

The second choice was a simple To Do List application. This application allowed one to enter a list of tasks, save these into database and mark them complete. Both applications used LINQ to SQL for accessing database.

I decided to go with the Task List application as this was simple and small application. This app is like the typical Hello World example with database support. I took only one hour to complete this app and run it properly.

Starting the new project
I opened VWD (Visual Web Developer0 and choose to create new project. MVC applications are developed as web applications. They are different from web sites. In the New Project dialog, I chose ASP.NET MVC Web Application. This automatically created a sample application in the solution explorer with three special meaning folders – Controller, Model and View. I deleted the classes and pages auto-generated by the WVD. The I proceed step by step as instructed in the example application.

Step By Step Progress Through Solving Issues:
Once I completed typing (yes, I preferred to type instead of copy-pasting it) the code and creating all the classes and pages, I was time to see the code in action. But as you know, no code runs for the very first time. Although VWD (and VS as well) minimizes the  chances of syntax errors to zero, many other types of error always occurs in the code. I face following problems for which I again need to do some Googling.

The ViewData Problem:

“The name ‘ViewData’ does not exist in the current context”

Even before compiling the code, my Index.aspx view warned me that ViewData is undefined by placing a red line below this. After some unsuccessful silly adjustment to the code, I go for Googling. I found a post in ASP.net forums asking for the same question. ScottGu answered the post by saying – “Have you tried compiling the project?  It could be that you haven’t done a compile since you added the page, and so intellisense with C# hasn’t picked up that you are deriving from a base-class yet”. This was very strange for me but I decided to go with Scott and compiled the code successfully. But when I run the code, the same problem reappeared.

After 20 minutes of unsuccessful Googling, I decided to use trial-and-error method. And finally I got the solution.

Solution:
The root cause of the problem was that I added a Web Form in my Views folder instead of MVC View Content Page. The normal web form is inherited from System.Web.UI.Page class  while an MVC View Content Page is inherited from System.Web.Mvc.ViewPage class. I change the parent class to ViewPage and it worked fine.

Primary key error in inserting the record:
Now I rum my application without any error. The Index page that displays a list of all tasks appears on the browser. I opened create page to add a new task. On pressing submit button, it gave primary key related error. The error was cause by the InserOnSubmit method of the LINQ generated class. The error was quite obvious that I forgot to define primary key on the table. I had an Id column with its Identity attribute set to on. So, ideally any insert statement should not have issue with the primary key. But to fix the error, I modified the table structure and declare Id column as primary key. But the problem still persisted. Like the above issue, Googling was unsuccessful in this case as well and I had to go for trial-and-error method.

Solution:
The solution was quite simple. I had to open the dbml file which is used for LINQ-to-SQL. I deleted the table from this file and again dragged that table into dbml designer from Server Explorer. Pressed F5 and the page was opened successfully in the browser. Opened the create page, added a task and pressed submit button. No error…
I checked into database table and the record was successfully inserted.

So this was the experience of developing first MVC application. The overall experience was good and exciting. I liked the simple and easy-to-read URLs that were displayed in the browser’s address bar.

Keep watching for more in ASP.Net MVC

Technorati Tags: ,

kick it on DotNetKicks.com

Scott Guthrie’s ASP.net MVC Tutorial Links

Filed under: .Net, Programming, Technology, Web Technology — yaneshtyagi @ 12:13 pm
Tags: ,

ASP.NET MVC Framework
One of the things that many people have asked for over the years with ASP.NET is built-in support for developing web applications using a model-view-controller (MVC) based architecture. Last weekend at the Alt.NET conference in Austin I gave the first…

ASP.NET MVC Framework (Part 1)
Two weeks ago I blogged about a new MVC (Model View Controller) framework for ASP.NET that we are going to be supporting as an optional feature soon. It provides a structured model that enforces a clear separation of concerns within applications, and…

ASP.NET MVC Framework (Part 2): URL Routing
Last month I blogged the first in a series of posts I’m going to write that cover the new ASP.NET MVC Framework we are working on.  The first post in this series built a simple e-commerce product listing/browsing scenario.  It covered the high…

ASP.NET MVC Framework (Part 3): Passing ViewData from Controllers to Views
The last few weeks I have been working on a series of blog posts that cover the new ASP.NET MVC Framework we are working on.  The ASP.NET MVC Framework is an optional approach you can use to structure your ASP.NET web applications to have a clear…

ASP.NET MVC Framework (Part 4): Handling Form Edit and Post Scenarios
The last few weeks I have been working on a series of blog posts that cover the new ASP.NET MVC Framework we are working on.  The ASP.NET MVC Framework is an optional approach you can use to structure your ASP.NET web applications to have a clear…

ASP.NET MVC Preview 5 and Form Posting Scenarios
This past Thursday the ASP.NET MVC feature team published a new “Preview 5″ release of the ASP.NET MVC framework.  You can download the new release here .  This “Preview 5″ release works with both .NET 3.5 and the recently…

Technorati Tags: ,

kick it on DotNetKicks.com

September 25, 2008

Chrome Vs. Firefox

Filed under: Web Technology — yaneshtyagi @ 4:24 pm
Tags: ,

SunSpider, a benchmark test  used by Mozilla,  shows that the forthcoming Firefox 3.1, which uses a JavaScript acceleration technology called TraceMonkey, is faster than Chrome for JavaScript programs. It was 28% faster than Chrome on Windows XP and 16% faster on Vista.

Read More

September 23, 2008

Project Rosetta

Filed under: .Net, Programming, Technology, Web Technology — yaneshtyagi @ 7:15 pm
Tags:

ASP.net programmers, are you ready for the Silverlight? Still wondering what Silverlight is?

Silverlight is the Microsoft’s answer to the Adobe’s Flesh. And considering the Microsoft’s marketing strategy and market share, I can bet this is going to be the next big thing in the Web 2.0 age.

So does that mean learning a new technology? The answer is – Yes. As an asp.net programmer you have to learn this Silver Light thing. Soon those static (including DHTML) websites will be history. This is the RIA age. RIA – Rich Internet Application – are getting more and more popular following Moory’s law.

But here is a good news from Microsoft. Microsoft has started a new project that will help one to learn this Silverlight stuff.  Below is the excerp from today’s MSDN Flash:

Project Rosetta
Still wondering what all the buzz around Silverlight is about? Check out Project Rosetta, a site dedicated to helping designers and developers build applications in Silverlight while taking advantage of skills they already know from their experience with Flash programming.

So if you know flash (or don’t. doesn’t matter), it is really easy to learn silverlight. But as with any other design skills, learning and being creative are two different things.

So get your hands started on Silverlight ASAP and get experienced before it’s too late.

Related Links:

May 26, 2008

Automatic Formatting of Markup (HTML) in ASP.NET

Daniel at dimebrain did a really fantastic work writing a plug-in for VS that can format the markup in asp.net. When you build a web page using the VS designer, it auto generates the markup. But the auto generated code so clustered and impossibly hard to read.  You have to manually format the markup (HTML) code by hand. This is always very tiresome and boring job. Also this is wastage of time.

Daniel also felt the same. After being inspired by the Joe Stagner, he developed this plug-in. It provides an additional Edit menu item and hotkey (Ctrl+K, Ctrl+Z) to automatically line up attributes in a selection of text, or format the entire document if no text is selected. The meat of the add-in is a handful of regular expressions that parse tags (XAML, HTML, and ASP.NET directives) and a few IDE tools to line them up according to their indent level.

Download Links:

Screen Shots:

Next Page »

Blog at WordPress.com.