Friday, April 17, 2015

Excel: Windows can not find.... Make sure you typed the name correctly, and then try again.

I have tried these and it works:
  • Button Office(top left)
  • Excel Options(bottom)
  • Advanced(left)
  • (right) Search: General
  • Remove the check mark from "Ignore other applications that use Dynamic Data Exchange(DDE)".
If not working, see:

Monday, April 6, 2015

IIS 7.0 Error - 500.19 Internal Server Error

Error Summary
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Detailed Error Information
Module  IIS Web Core
Notification    BeginRequest
Handler Not yet determined
Error Code  0x80070005
Config Error    Cannot read configuration file due to insufficient permissions
Config File \\?\C:\HostingSpaces\int\\wwwroot\web.config
Requested URL
Physical Path   C:\HostingSpaces\int\\wwwroot\VirutalDirectory\Webservice.asmx
Logon Method    Not yet determined
Logon User  Not yet determined
Config Source


You should check the permission of the user account of the apppool. Or you can check the security property of the folder(C:\HostingSpaces\int\\wwwroot). Ensure the account of the apppool of IIS can read the folder at least. 

Sunday, April 5, 2015

IIS Application Pool

Applies To: Windows Server 2008
An Internet Information Services (IIS) application pool is a grouping of URLs that is routed to one or more worker processes. Because application pools define a set of Web applications that share one or more worker processes, they provide a convenient way to administer a set of Web sites and applications and their corresponding worker processes. Process boundaries separate each worker process; therefore, a Web site or application in one application pool will not be affected by application problems in other application pools. Application pools significantly increase both the reliability and manageability of a Web infrastructure.

Managed Entities

The following is a list of the managed entities that are included in this managed entity:
IIS Worker Process An Internet Information Services (IIS) worker process is a windows process (w3wp.exe) which runs Web applications, and is responsible for handling requests sent to a Web Server for a specific application pool.


The following is a list of all aspects that are part of this managed entity:
IIS Application Pool Availability Web sites and Web applications depend on the availability of Internet Information Services (IIS) application pools. IIS application pools in turn depend on the Windows Process Activation Service (WAS). If WAS is not running or errors occur during the startup or shutdown of an application pool, Web sites and Web applications may not be available.
IIS Application Pool Configuration To ensure Web site and Web application isolation, Internet Information Services (IIS) application pools must be configured to have unique names and correctly configured identities. If errors occur during the configuration of an application pool, the application pool may not be available to serve the Web sites and Web applications that are assigned to it.
IIS Application Pool Recycling Internet Information Services (IIS) application pools can be periodically recycled to avoid unstable states that can lead to application crashes, hangs, or memory leaks. By default, application pool recycling is overlapped, which means that the worker process that is to be shut down is kept running until after a new worker process is started. After a new worker process starts, new requests are passed to it. The old worker process shuts down after it finishes processing its existing requests, or after a configured time-out, whichever comes first. This way of recycling ensures uninterrupted service to clients. However, if an application in the application pool cannot run more than one instance of itself at a time, overlapping rotation can be disabled.

Related Management Information

Internet Information Services (IIS) 7.0

Thursday, April 2, 2015

How to Migrate from IIS 6 to IIS 7 

Courtesy from above link:

With so many cool new capabilities in IIS7, and even more new features coming out all the time, it's no wonder you want to move to IIS7.  But you work for The Man, and everyone knows The Man wants ROI.  He can't just let you go willy-nilly and adopt every cool new technology that hits the street.  After all, He has a business to run.  And that business currently runs on IIS 6.  And he's paid you a lot of money (ok, not that much) to write the code, test the apps, deploy the servers, and keep those HTML pumping machines up and running 24x7x365.  And things are running well, right?  When was the last time you had to worry about metabase corruption?  Or been forced to run IISRESET?  Or been paged in the middle of the night with some glorious server 500 error and (of course) the developer who wrote the code is no where to be found?  
Dear reader, I know your plight.  I've been there before.  I work for The Man too.  And while he is a kinder, gentler boss as he moves into his old age (>30s!), he expects results. 
This post is broken into three parts.  1) Sell the Boss 2) Get the Goods 3) Be the Hero (and migrate those servers!).  If you're already sold on IIS7, jump to section 2 and 3 for instructions on how to actually migrate those IIS6 servers to IIS7 in a quick and painless way. 

Sell the Boss

So how do you sell The Man on moving to IIS7?  Here is my quick top 10 list, email me if you need more help:
  1. IIS7 is faster and more efficient than any other version of IIS.
  2. With IIS7 you can manage whole Web farms from one place
  3. IIS7 allows you to delegate management workload with site owners. Site owners can also remotely manage their sites and applications over HTTPS from Windows Vista, Windows XP, Windows Server 2003, and Windows Server 2008.  IIS7's XCopy deployment model even allows you to deploy applications preconfigured!
  4. IIS7 is much more flexible and customizable than before, allowing you to fine tune the server (including server core!) to minimize security footprint and downtime due to patching. 
  5. You can save loads of time by automating more tasks with the interface that is right for you.  
  6. If you do run into issues, IIS7 makes it easy to resolve site issues faster, minimizing down time due to that bone headed developer on your staff. 
  7. IIS7 includes built-in support for PHP, making it the best Web server for both Open Source languages and .NET.  Why would you want to deploy, manage, patch and troubleshoot that Linux+Apache server to support those PHP apps, when you can just use Windows!?
  8. IIS7 makes it easy to publish content securely over FTP/SSL or WebDAV!
  9. Windows and IIS7 are cheaper than ever with the new Windows Web 2008 product.  This version of Windows is super inexpensive and supports all the great features of IIS, Sharepoint, SQL, Windows Media server and more for Internet facing sites!
  10. And as if that isn't enough, IIS7 is getting better every day with new IIS7 Extensions like built-in progressive streaming and playlist support for media content, URL Rewrite capabilities, integrated database management, powershell support, and much much more. 

Get the Goods

If your company already has access to Windows Server 2008, you've paid all the money you'll ever need to pay in order to get IIS7 up and running.  Have a cheap boss who wants to see the results first?  Get the Windows Server 2008 trial edition which lets you try before you buy.  I recommend the Windows Web Server 2008 for Internet facing sites, or Standard server for intranet ones. Note:  IIS7 also ships with Windows Vista, which you can use for development and testing of your applications.
Now that you've got IIS7, it's time to get the migration tool (x86) and (x64).  Ok, it is a WHOLE LOT MORE than just a migration tool, but this article is about migrating, and the Microsoft Web Deployment tool was built specifically with migration from IIS6 to IIS7 in mind.  Download it now, use it to not only migrate from IIS6 to IIS7, but to archive (snapshot) your entire site/server (including configuration, content, certificates, etc.).  You can also use it to do live synchronization of your IIS6 or IIS7 sites or servers in a web farm.  MS Deploy is going to be your new best friend, be nice to it.

Be the Hero (and migrate those servers!)

This step is documented very nicely in the portal under deployment, but I'll shamelessly steal from there to make your life easier.  If things don't work (any longer), you might want to check the official documentation for the latest updates, or see Troubleshooting MS Deploy.  This section assumes you've already downloaded MS Deploy and have installed it successfully.  (see "Get the Goods")


Part 1 - View dependencies of the source

1. Get the dependencies of the web site by running the following command:
msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1
2. Review the output of the dependencies and look for any script maps or installed components in use by the site. For example, if Windows Authentication is in use by the web site, you will see .
3. If your site is inheriting any script maps, these will not be listed in the dependencies and you should also review the script maps for your site manually.
4. Compile a list of the components needed on the destination.
For detailed steps on analyzing the output of getDependencies, see Viewing Dependencies of a Web site.

Part 2 - Configure the target or destination machine

1. Review the list of dependencies and install them on the destination server.
For example, let’s assume you had the following in use for your web site:
• Windows Authentication
• Anonymous Authentication
Based on analyzing your dependencies, you would install those components and modules.


Part 3 – To migrate the site to the source server

1. Always make a backup of the destination server. Even if you are just testing, it allows you to easily restore the state of your server. Run the following command to backup an IIS 7.0 server:
%windir%\system32\inetsrv\appcmd add backup “PreMsDeploy”
2. Run the following command on the destination server to take an archive of the server for migration:
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:archivedir=c:\site1archive
3. Run the following command on the destination server to validate what would happen if a migrate was run:
msdeploy -verb:migrate -source:archivedir=c:\site1archive -dest:metakey=lm/w3svc/1 -whatif > msdeploymigrate.log
Note: If you don't wish to sync from an archive, you can sync using the remote service. Specify computerName with the name of your server, such as Server1. If you are not running on the default port and URL, you need to specify the full URL, such as http://Server1:8080/msdeploy. For example, change the source to
3. After verifying the output, run the same command again without the whatif flag:
msdeploy -verb:migrate -source:archivedir=c:\site1archive -dest:metakey=lm/w3svc/1 -whatif > msdeploymigrate.log
Note: If you don't wish to sync from an archive, you can sync using the remote service. Specify computerName with the name of your server, such as Server1. If you are not running on the default port and URL, you need to specify the full URL, such as http://Server1:8080/msdeploy. For example, change the dest to

You are now done migrating your site. To verify, test browsing to the web site on the destination server. For troubleshooting help, see Troubleshooting MS Deploy.

Using RS Scripter to create deployment script for reporting services

If you are using SSRS then chances are high to come across a scenario where you want to deploy reports developed on development machine to the production server, there are various ways to do this and one of them is to use RS Scripter tool. Here are the steps to do this -

1. Creating Report Deployment Script

  1. Download the Reporting Services Scripter -
  2. Update the servers.xml; change the reportservice value if your ReportServer name is different.

  3. Run the RSScripter.exe.
  4. Click on Options, and select the options selected in images below( for more information about Scripting Options check the readme file - – clip_image001
  5. Change the SQL 2005 RS EXE Location in the Global tab as per the location of SQL server and Apply – clip_image004
  6. Select SQL 2005 from the Report Server dropdown and click on Get Catalog, all the reports, data source, Schedules, Roles etc. present in report server will be displayed –
  7. Select all the reports, data source, schedules and roles you want to transfer.
Change the output directory path (Should not be machine/user specific e.g. Desktop) e.g. C:\AClickReports and click on Script. The script for loading the specified items will be generated to the specified folder.

2. Deploying the Reports

  1. Ensure that you have IIS and dot net framework 2.0 is installed on report server.
  2. While installing SQL server 2005 select reporting services option.
  3. Follow the report server configuration steps and make sure "Report Server Configuration Manager" is all green ticks? clip_image008
  4. Follow these steps to publish reports –
    1. Extract the AClickReports folder to the report server, C: Drive.
    2. Open the “RS Scripter Load All Items.cmd” file located in AClickReports folder for editing.
    3. Change the SCRIPTLOCATION Script variable value to the location where AClickReports folder is copied (Should be same to the output directory path selected in step 3.8)
        SET SCRIPTLOCATION=C:\ AClickReports\
    4. Change the RS Script variable value to the location where Microsoft SQL Server is installed (if it is different from the default C drive).
      SET RS="C:\Program Files\Microsoft SQL Server\90\Tools\Bin\RS.EXE"
    5. Run the RS Scripter Load All Items.cmd batch file, it will publish the reports to the report server.
  5. Follow these steps to verify that reports are deployed correctly
    1. Go to http://localhost/Reports/Pages/Folder.aspx,
    2. Open the Data Sources you should see data sources selected in step 1.7
    3. Open the data source and update the data source details as per the configuration of report server(if they are different) and apply.
    4. Go back to Home page and click on the report folder selected in step 1.7 , select one of the reports and click on Edit button, then click on the Data Sources link ; Make sure that the data source is configured properly.
    5. Repeat the steps from 2.5.2 to 2.5.4 for other data sources and report folders.

Cannot connect to or resolve name Exchange server

Connecting to the Exchange server is done by means of a Global Catalog (GC) server which is a role of an Active Directory Domain Controller and acts as a backbone in a network that is using Exchange. If such a server  hasn’t been properly removed from the domain in the past, then it could be that some clients are still trying to connect via that decommissioned GC server.

Force clients to connect via a specific Global Catalog server

As you are troubleshooting the issue, you might want to take a client approach first to determine if an improperly removed or failed GC server indeed is your issue. To do this, you can make a Registry edit on the troublesome computer to force Outlook to connect via a specific Global Catalog server.

Key: HKEY_CURRENT_USER\Software\Microsoft\Exchange\Exchange Provider
Value name: DS Server
Value type: REG_SZ
Value: FQDN of the GC server

You can ask your mail administrator or support desk for the FQDN of a Global Catalog server.
Example value:

The name cannot be resolved. The connection to Microsoft Exchange is unavailable. Outlook must be online or connected to complete this action.
When a GC server gets removed improperly, Outlook may get issues connecting to Exchange.