Showing posts with label Windows Server 2003. Show all posts
Showing posts with label Windows Server 2003. Show all posts


Version Check is a basic operation which every developer does while building applications. Wrong Conditions may cause Application Compatibility issues to both developers and users, when they look at migrating the existing applications to a newer OS. The Windows version is actually composed of a bunch of different fields, all packed into anOSVERSIONINFO structure.
The relevant parts of the OSVERSIONINFO are:
  • Major Version (dwMajorVersion)
  • Minor Version (dwMinorVersion)
  • Build # (dwBuildNumber)
List of Windows Client OS with their Version Numbers
Operating SystemVersion Number
Windows 1.01.04
Windows 2.02.11
Windows 3.03
Windows NT 3.13.10.528
Windows for Workgroups 3.113.11
Windows NT Workstation 3.53.5.807
Windows NT Workstation 3.513.51.1057
Windows 954.0.950
Windows NT Workstation 4.04.0.1381
Windows 984.1.1998
Windows 98 Second Edition4.1.2222
Windows Me4.90.3000
Windows 2000 Professional5.0.2195
Windows XP5.1.2600
Windows Vista6.0.6000
Windows 76.1.7600

Yochay Kiriaty says that “A lot can go wrong when version checking is misused. A user might experience a “silent fail” where the application simply fails to load and nothing happens. Or, a user might see a dialog box indicating something to the effect of “you must be running Microsoft Windows XP or later” when in fact, the computer is running Windows 7. Many other consequences to poor version checking can inconvenience users as well.”
Reference- Windows Team Blog


n the earlier article on Analyzing the ACT Reports, we learnt on how we can identify the application Compatibility issues in your machine/organization. Even If you are not keen in generating an app-report,  this method described in this article will help you learn how to mitigate an application using shims.
The Compatibility Administrator tool enables you to resolve many of your potential application-compatibility issues before deploying a new version of Windows in your organization. This tool enables you to create customized compatibility fixes, compatibility modes, AppHelp messages, and compatibility databases.
Process to Fix an Application – The steps involved in fixing an application using this tool is quite easy. First launch the application, test its functionality. If your enviroment is a locked-down one, then test the application as a Standard User. Identify the issues which arise. Use the Compatibility Administrator tool to create a new Shim database (.sdb), select the compatibility modes and fixes for this application. Apply this shim and test the application again. If the app works and responds fine, deploy the same on the machine.
Compatibility Administrator Process
Step 1: Install the Application Compatibility Toolkit and Start the Compatibility Administrator. You will need to run this as administrator
Launch Compatibility Administrator
As mentioned earlier, This tool  provides individual compatibility fixes, compatibility modes, and AppHelp messages which can help you resolve specific compatibility issues. Right click on the New Database, you will find these below options.
Creating an Application Fix Compatibility Administrator
Step 2: In this example, we will look at how you can fix an application. So lets choose Application Fix here. In this below dialog, give the application details and the executable you would wanna fix.
Create New Application Fix
Step 3: When you press the next button, you will get to see the list of the compatibility modes listed by default. If you have an issue with just the version in-compatiblity then choose the version in which the application was working earlier! You can also do a “Test Run” of the app.
OS Modes - Compatibility Administrator
Step 4: As of now, lets not choose any OS mode here. You can do it in the next window (when you have combination of shims to be choosed). As shown below, you have lots of shims to choose from. Select all the shims which would fix your application (based on the analysis you did during the Application Tests or from the Analyzed Report).
Available Shims - Compatibility Administrator
As you can see above, few of the shims do have parameters to work with. You can check the ACT Documentation to understand more on these individual shims. Check out these 2 articles, where I have written on how you can use Parameters for File and Registry Re-Direction shims (VirtualRegistry and CorrectFilePaths).
Step 5: Let me select the shims, which will resolve the issues with the application I am currently fixing. You can click on the Show Selected Button, which will list out all the shims you have selected.
Selected Shims - Compatibility Administrator
Summary Fixed Application - Compatibility Administrator
Click on Finish. This will give you the complete summary of the application and the fixes applied.
Summary Application - Compatibility Administrator
The Windows installs a System Application Fix database for use with the Compatibility Administrator. This database can be updated through Windows Update, and is stored in the %WINDIR% \AppPatch directory. The custom databases which we create are automatically stored in the %WINDIR% \AppPatch\Custom directory and are installed by using the Sdbinst.exe tool provided with the Compatibility Administrator.
Step 6: Now you need to save this shim database file, and install it. You can either install it by, right click on the shim and press install button, or by using a command-line option.
Install Shims
Or using Command Line arguments – sdbinst.exe C:\msigeek.sdb
sdbinst Command Line
You also have an option to use a query tool that enables you to search for installed fixes on your local computers.
Query Database


Internet Explorer Compatibility Test Tool (IECTT) is a part of the Application Compatibility Toolkit. Its a freeware tool from Microsoft to solve and address AppCompat Issues.
You can also emulate your website to solve the Website Compatibility Issues – 
This Tool collects your Web-based issues from Internet Explorer 7 / Internet Explorer 8, uploads the data to the ACT Log Processing Service, and gives the details about discovered compatibility issues. It also provides you links for more information about each of this compatibility issues.
To know more on how to Install and setup the Application Compatibility Toolkit Environment, i would recommend you read this article!
Step 1: Invoke the tool from the Start Menu -> All Programs -> Microsoft Application Compatibility Toolkit 5.5 -> Developer and Test Tools -> Internet Explorer Compatibility Test Tool
Internet Explorer Compatibility Test (IECT) Tool
Once the application is launched, you will see the below dialog;
Internet Explorer Compatibility Test Tool
Step 2: Close all of your active Internet Explorer browser windows; and then click on the Enable button in the Toolbar.
Enable - Internet Explorer Compatibility Test Tool
This will start monitoring your Internet Explorer session. In the Internet Explorer Compatibility Tool, you can view the potential compatibility issues, filter your results, save an issue report, and open an existing issue report, and upload all data to your ACT database.
Step 3: Now Open the website on the Internet Explorer (This would be the website, which you would need to check the Compatibility for)
Report Gathering - Internet Explorer Compatibility Test Tool
Step 4: Press the Disable Button. This will stop the monitoring of the Website.
Disable - Internet Explorer Compatibility Test Tool
You will now see the complete information which was collected. You can also opt to save this report (.cet) file, so that you can review your issues at a later time, or for archival purposes.
Data Collected - IECTT
You can also filter the reports based on the issue occurances.
Filter Report
Step 5: You have an option to Upload these data to your ACT Database and rationalize and review it using the ACM (Application Compatibility Manager). Click on the Upload Button. This will create an XML file and bucket the data.
Upload the Reports
Saving the Issues Cab File
Step 6: Save the Cab file in the parent level of your ACT log file directory; This will be automatically processed by the ACT Log Processing Service the next time it runs. If you have not created the LogShare – Check this out
Save the cab file in the Root Folder of the Log Share
Step 7: Start the Application Compatibility Manager (ACM) - (right click and run as administrator)Now you will see the Internet Explorer reports also. If you do not see the collected data., open services.msc, stop the ACT Log Processing Service and Restart it.
IE Reports in ACM
Now you can Send-Recieve the data on ACM, so that you can get the suggestions from the community / Microsoft on this issues. If you are an IT Pro, you can also forward this report to the website developer, to fix these issues.
Send Recieve IE Reports
To understand on how to analyze these reports on the Application Compatibility Manager –Read this article


Earlier, we have discussed on how to Setup and Configure the Application Compatibility Toolkit 5.5 and Creating the Data Collection Package to start analyzing the Applications. In this article, we will look at how to analyze this report,  and how important is to rationalize and priorotize the applications. We will also look at how to get hints and support from the Community on solving the AppCompat Issues.
Step 1: Once the data is collected, the Report of applications would look like this. As mentioned earlier, ACT has an active Community/Microsoft relations which checks and monitors all the applications and provide you ready suggestions to ease the AppCompat Process. For which you will need to Send/Recieve the Reports. Click on the button as shown below.
Send Recieve the ACT Reports to the Microsoft / Community
Once you hit the Send and Recieve button, you will be prompted with a confirmation message, which would list all the information which you will be sharing with the Microsoft Team.  You can have a look through it and then confirm. You can also review the data before sending. If you have an in-house application, and you do not want to share that report with Microsoft, you can also do that.  (The instructions are given in the later part of this article) 
Send Recieve the ACT Reports - Data
Step 2: Once when you hit the Send Button, the Report Data Exchange will start and you will see the report now with all the community/Vendor assesments. (as shown below)
Data Collected - Analyze Phase
This report will give you information on all the applications which were gathered during the Data Collection Phase.  After the data exchange, you will find all the information on Community/Vendor Assesments, Issue reports, Mitigation tips etc.. You also have options to Prioritize issues and apps.
Step 3: Lets sort this report upon the active issues now. I see that, there is an application(System Center Configuration Agent) which has 2 active issues.
Application with Active Issues
Step 4: You can rationalize application and set the priority on the same.  Right-Click on the My Assesment Tab, you will see the below options.
My assesment - ACT
You can set these below Priorities for this application. (As the name suggests). For eg: If this application is business critical for you, you can priorotize the same, so that the Application Compatibility team knows this and they take the action first on this!
Priority Lists
You also have options to categorize the application as, whether is it an in-house, Microsoft or even a Third Party Application. This would be very useful to contact the support / Technical Account Manager to check with the compatible version software. 
Assign Category
You can also set the deployment Status in the report for periodic updates and references.
Set Deployment Status
As I had mentioned earlier, you can control the reports before being shared with Microsoft / Community. For eg: If you have a confidential in-house application and you do not want to share the information about that particular software with Microsoft you can opt to do that.
Restrict - Send Recieve the ACT Reports
Step 5: Now lets see some detailed instructions on what that active issue is all about. Double click on the application row. It will open another dialog, which provides you information on the Assesment, Issues, Application Attributes, the computer from which this application was fetched.  
Investigating an Application
Step 6: Goto the Issues tab. This will list the 2 issues which was found. Double click one of them. This will give you information on the Priority, Severity, Symptoms and causes as well. This will give enough hints on how to fix the issue / work with this application.
Issue Description
If you know or come across a solution, you can add your description and method to mitigate an issue.  Goto Actions – Add Solution. Similarly, you can also file a new issue and ask the community for answers and opinions.
Adding Solution to an Application - Analyze
 Step 7: Once you complete the work on it, you can also set the Assesment State for that particular application. Right click on the My Assesment Area, select “Set Assesment”.
Set Assesment
Following this process, you can identify all the issues and rationalize the applications as per your organization/personal need.


Earlier, we have discussed on how to Setup, Install and Configure the Application Compatibility Toolkit 5.5 on a machine to start the AppCompat process. If you have not read it, I would recommend if you can have a glance through this article first.
In this article, we will look at how to Create and Deploy a Data Collection Package (DCP) to gather inventory for software, hardware, and device assets.
Step 1: Launch the Application Compatibility Manager, from the Start Menu (Right click and Run as Administrator)
Invoke Application Compatibility Manager
If you see the below dialog, you have configured the ACM correctly, If you see a wizard, then you need to follow these steps before you can continue.
Application Compatibility Manager
Step 2: By default, this window lands up in Collect Option. Goto File Menu, Create New Data Collection Package. Once you do this, you will get the below dialog.
Creating a Data Collection Package - Application Compatibility Manager
Step 3: Name your DCP. For the ease of remembering, I have named this DCP as“DataCollector_May2010″.  Now you have lots of options here to choose from. The DCP also has an ability to identify Windows Updates. You can choose that, if you want to assess the updates. One of the important point about the DCP is Scheduling.
Scheduling a Data Collection Package
The Application Compatibility Manager provides you with various options, to schedule the execution of the DCP. You can choose whether, this Data Collection should start immediately as soon as the package is installed.. or even Schedule it. For eg: If you are trying to collect the data from a site in different region, it makes sense to start the data collection at their working hours. So you can schedule it that way!
Step 4: This is another important step, where you will mention the duration the Data Collection should happen. This is the period where the ACT Data Collection Service will be running in the machine. As you see in the below image, you can choose Days, hours or even minutes.
Scheduling a Data Collection Package - Duration
In the next section, you will observe that the Log share which we created earlier will appear. This is the location, where the app log files will be written.
Step 5: Now save the Data Collection Package. This will create an msi file, which you can use it to trigger the Data Collection Service. In an individual machine, you can just double click and trigger the msi. In an enterprise environment, you can even deploy this msi using any of your deployment Tools.
Data Collection Package is Created
On invoking this package (DataCollector_May2010.msi), you will see that the ACT Data Collector Service is started.
ACT Data Collector Service - Started
This service will run for the duration, you had set earlier. (Step 4). This service will monitor all the changes and applications in your computer during this period. After this duration, you will see that this service will now be stopped and removed (see below image)(For demo purpose – i had kept it as 3 minutes)
ACT Data Collector Service - Stopped and Removes
Step 5: Once this service Stops, you can launch the Application Compatibility Manager again, and goto the Analyze Tab. Here you will see the report which were collected.
Application Compatibility Manager - Analyze Phase
Now when you click on the Applications (left side) under the Windows 7, you will get to see a list of all the applications which were gathered.
Data Collected - Analyze Phase
If you are on a good bandwidth or you prefer to see this as a Video, Check the same below.
This completes the Data Collection Process. In the next article, we will look at how to Analyze this report and work on it to mitigate applications.