This Blog is for all people working or related to the MSI and App-V. There are lots of issues we face in everyday work regarding the technology. The sole purpose of my blog is to help others with whatever I learn. All you people out there, please help by commenting, voting, propagating and sharing my blog with your friends and colleagues but with due credit and acknowledgement to the material posted here with my name and blog url as I still do hold the copyright of the posts here.
Monday, May 14, 2007
Modify the System and User Paths
If you are in the C:\TEMP directory and type in NETSTAT at a command prompt to view active connection statistics, Windows will most likely not find "netstat.exe" in the C:\TEMP directory.
However, the C:\WINDOWS\SYSTEM32 directory is in what's called the path, or a list of directories Windows uses if it can't find an executable in the current directory. Since C:\WINDOWS\SYSTEM32 contains the file "netstat.exe", Windows will run the command from there.
By using the SET command with the PATH environment variable, you can modify Windows XP's path. However, doing so can be messy and error-prone.
If you frequently need to modify the PATH, the Windows 2003 Resource Kit comes built-in with a command called PATHMAN, or Path Manager, that lets you cleanly modify the system and user paths.
To use this command, you'll need to first download and install the Windows 2003 Resource Kit.
Then you can run pathman.exe and use one of the following options:
/as PATHAdds a semicolon-separated PATH to the system path
/au PATHAdds a semicolon-separated PATH to the user path
/rs PATHRemoves a semicolon-separated PATH from the system path
/ru PATHRemoves a semicolon-separated PATH from the user pathExamples:C:\>pathman /as c:\morecommands
This adds the directory "c:\morecommands" to the system path.
After restarting the current command prompt or opening a new command prompt, any batch files or executables located in the "c:\morecommands" directory are now executable from anywhere on your system.
Type the following command in a new DOS window to see your modified PATH environment variable:
C:\>set path
Now, to remove the directory from the path:C:\>pathman
/rs c:\morecommands
This removes the directory "c:\morecommands" from the system path.
After restarting the current command prompt or opening a new command prompt, any batch files or executables located in the "c:\morecommands" directory will only be executable from within the "c:\morecommands" directory.
Type the following command in a new DOS window to see your modified PATH environment variable:
C:\>set path
Source: http://malektips.com/xp_dos_0017.html
Monday, October 09, 2006
ICE Errors
My this post details about what ICE errors, how to check them and how to correct them. Many of you might be facing this problem.
Internal consistency evaluators, also called ICEs, are custom actions written in VBScript, JScript, or as a DLL or EXE. When these custom actions are executed, they scan the database for entries in database records that are valid when examined individually but that may cause incorrect behavior in the context of the whole database.
For example, the Component table may list several components that are all valid when tested individually with MsiViewModify. However, MsiViewModify would not catch the error when two components use the same GUID as their component code. The custom action ICE08 is designed to validate that the Component table does not contain duplicate component code GUIDs.
ICE custom actions return four kinds of messages:
Errors: Error messages report database authoring that cause incorrect behavior. For example, duplicate component GUIDs cause the installer to incorrectly register components.
Warnings Warning messages report database authoring that causes incorrect behavior in certain cases. Warnings can also report unexpected side-effects of database authoring. For example, entering the same property name in two conditions that differ only by the case of letters in the name. Because the installer is case-sensitive, the installer treats these as different properties.
Failures Failure messages report the failure of the ICE custom action. Failure is commonly caused by a database with such severe problems that the ICE cannot even run.
Informational Informational messages provide information from the ICE and do not indicate a problem with the database. Often they are information about the ICE itself, such as a brief description. They can also provide progress information as the ICE runs.
How to get ICE Error report
The most easy way of getting the ICE error report is by using ORCA tool.
You can download it from the net and can install it to your PC. When you right click on any MSI then you will get an option: Edit with ORCA. Once you have clicked on that, The MSI will open and you can see all the tables present in the MSI. MSI is nothing but a relational database. This will be proved to you when you see all these tables.
CAUTION: Be careful of doing any changes to these tables. Any wrong entry or modification can crash your system or your MSI.
How to Correct ICE Errors
ICE Errors are easy to remove, once you get a hands on experience on them.
Try this link below from MSDN, where you can find the description of lots of ICE Errors.
http://msdn.microsoft.com/en-us/library/aa369206(VS.85).aspx
You can directly make changes in the Tables through ORCA and can save the MSI. There is no need to again recompile the WSI then. If you recompile the WSI then you need to recheck the ICE Errors.
Point to note: The removal of ICE error is the best practise in creation of MSI. You should always remove all the ICE Errors from your package.
So all the best for ICE Errors....
Saturday, June 10, 2006
Frequently Asked Questions about Windows Installer (MSI) Packaging.
http://msiworld.blogspot.com/2011/11/frequently-asked-questions-about-com.html
- Transactional operations. All installation operations are transactional. For each operation that Windows Installer performs, it generates an equivalent undo operation that would undo the change made to the system. If a failure occurs during the middle of an installation, Windows Installer can roll back the machine to its original state.
- Self-healing. Windows Installer supports "self-healing" abilities for applications. Applications can detect common installation problems at launch, like missing files or registry keys, and automatically repair themselves.
- Installation on demand. Windows Installer supports on-demand installations of application features. For example, the spelling checker in Microsoft Office Word may not be installed by default, but a user can trigger an on-demand installation of this feature.
- Installation in locked-down environments. In fully locked-down environments, users don't generally have permission or the ability to install applications. In most cases, they don't have write-access to the Program Files folder of their computers or to the HKEY_LOCAL_MACHINE registry location. If an administrator approves an installation package by means of Group Policy, for instance, Windows Installer can perform an installation on the user's behalf.
- State management. Windows Installer provides a set of standard Win32® application programming interfaces (APIs) and automation interfaces for applications and administrators to use for querying the installation state on the machine. The APIs allow querying of the current state, verification of the existing state, repair of a corrupted state, and transition from one state to another.
Thursday, June 08, 2006
My first Words
This is a blog, which I have created for describing my experiences in MSI technology.
Presently I am working on WISE tool for creating MSI.
You all are welcome to have a look at my experiences and post your comments about them.
Some of my experiences might help you sometimes while you are packaging something similar.