Troubleshooting Guide
The Windows Azure Tools for Microsoft Visual Studio are available on the Windows Azure Tools for Microsoft Visual Studio download page. The Windows Azure SDK is included with the installation. Therefore, you don't have to install the SDK separately.
You can also install the Windows Azure Tools by using the Microsoft Web Platform Installer. This installer simplifies the process of installing and configuring Internet Information Services (IIS), the Windows Azure SDK, and the Windows Azure Tools.
To determine which versions of Visual Studio and Visual Web Developer are supported by the Windows Azure Tools, see Windows Azure Tools for Microsoft Visual Studio.
Installation and Upgrade
Azure SDK compatibility issue
If you are using Visual Studio 2012, you must use the 1.71 version of the Windows Azure Tools.
Windows Azure Tools 1.3 supports Visual Studio 2010 but not Visual Studio 2008. If both Visual Studio 2008 and 2010 are installed on the same machine and you install the Windows Azure Tools version 1.3, Windows Azure Tools version 1.2 in Visual Studio 2008 will be disabled. It's disabled because the 1.3 version of the Windows Azure SDK is incompatible with the Windows Azure Tools version 1.2.
User Account and Security
Visual Studio must be run as an administrator
You must run Visual Studio with elevated permissions when you build services for Windows Azure. You can create a shortcut that will start Visual Studio with administrative permissions. To create the shortcut, click the Shortcut tab. On the Advanced Properties page, select the Run as Administrator check box. Alternatively, right-click the Shortcut tab and then click Properties.
Windows Azure Diagnostics library cannot be loaded for a role that is running under Windows Azure partial trust
To access the Windows Azure Diagnostics classes provided by the Windows Azure Managed Library, a role must be running under full trust. If the role is set to run under partial trust, the following exception and message are generated when you access Windows Azure Diagnostics classes: ConfigurationErrorsException "Could not create Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35." To enable full trust, double-click the role name in the Windows Azure project in Solution Explorer. The property pages for the role are displayed. On the Configuration page, change the .NET trust level option to Full Trust.
Solution and Projects
Hosted Web Core (HWC) project support
When you use Windows Azure Tools version 1.3 to open a HWC-based project that was created with an earlier version of the Windows Azure Tools, you will be prompted to upgrade the project. The upgrade modifies the project to use full IIS support. In most cases, your project will work correctly with full IIS, but in some cases you might encounter problems. For more information, see Azure SDK Release Notes. To continue to run your web role under HWC, remove the <Site> declaration in the service definition file.
Role recycle behavior change
Starting with Windows Azure Tools version 1.3, a project that was created in Visual Studio no longer includes default code that forces the role to recycle when a configuration change occurs. If you have to recycle the role after a configuration change, see How to Change the Configuration of a Running Service for more information.
Path too long
You might receive the following error if your solution and project names are too long:
The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.
To correct this, create a Windows Azure project with a shorter solution and project name.
Dependencies and project references between role projects
You can’t directly refer to one project from another in Windows Azure solutions. This limitation is because each project is treated as a separate and independent role that will be deployed to a separate set of virtual machines. If a role’s project contains code that another role must use, you must factor the code out of the role and into another assembly that you can reference from both role projects.
Debugging and Running from Visual Studio
Keep the Windows Azure project set as the StartUp project when you run or debug an application
To run or debug your cloud application using the storage emulator, you must set the cloud project as the start-up project. Make sure that the following setting is not selected: Solutions | Build and Run | For new solutions use the currently selected project as the startup project in the Options dialog box.
Breakpoints set in one file might be hit in all of the files that have the same name
When multiple roles in a single Windows Azure project contain a file with the same name, for example, WorkerRole.cs or WorkerRole.vb, breakpoints set in one of the files might be hit in all of the files. For more information about the Require source files to exactly match the original version debugging option, see General, Debugging, Options Dialog Box.
If you encounter this issue even when the option is selected, restart Visual Studio and try again.
IIS update to support FastCGI applications
To run a cloud service that uses the FastCGI module to host non-ASP.NET applications on the storage emulator, the following update is required: http://support.microsoft.com/kb/967131
Detaching from a process
When you debug a cloud service and detach from all of the processes being debugged, debugging will stop and the deployment will be deleted.
Visual Studio 2010
An install error appears that states that the .NET Framework 3.5 must be installed
Visual Studio 2010 only installs the .NET Framework 4 and not the .NET Framework 3.5. On some operating systems, the .NET Framework 3.5 is not installed by default. The Windows Azure Tools support targeting both the .NET Framework 3.5 and the .NET Framework 4. Therefore, you must install the .NET Framework 3.5. You can install it from here.
The default .NET Framework 4 MVC 2 project does not run when uploaded to Windows Azure
The MVC 2 project template uses SQL Express locally to enable authentication. You have to update the Web.config file so that the ApplicationServices connection string points to a SQL Azure database instead of a SQL Express database.
IntelliTrace cannot be enabled on a 32-bit version of Windows
If you are running on a 32-bit version of Windows, the Enable Intellitrace checkbox is disabled. To use IntelliTrace to debug a Windows Azure service on a 32-bit version of Windows, you must install the following QFE: http://code.msdn.microsoft.com/KB983301.
Compute Emulator
Windows Azure applications that use the FastCGI module require a hotfix
To run a Windows Azure application that uses the FastCGI module to host non-ASP.NET applications on the storage emulator, the following update is required: http://support.microsoft.com/kb/967131
“WaWorkerHost.exe has stopped working” message
Unhandled exceptions in the worker role are not caught by the storage emulator. When a worker process terminates, it is restarted. This can result in repeated “WaWorkerHost.exe has stopped working” messages. This message does not indicate an error and does not affect future runs.
Storage Emulator
Using the storage emulator with SQL Server Express 2008
By default, the local Windows Group BUILTIN\Administrator is not included in the SQL Server system administrator server role on new SQL Server Express 2008 installations. To use the local storage services on SQL Server Express 2008, add yourself to the system administrator role. For more information, see SQL Server 2008 Security Changes.
Changing the instance of SQL Server that is used by the storage emulator
The storage emulator uses the default instance of SQL Express. To change the instance of SQL Server that is used, run the following command from the Windows Azure SDK command prompt:
DSInit.exe /sqlinstance:<SQL Server instance>
See Also