Developing for Windows 7: deployment seems an issue
I have remarked that I have installation problem when I download some commercial software and install them on Windows 7. For example the message about data1.cab not found. I tried to register cabview.dll but it didn't fix.
So what do you need to do to insure that your software will deploy for su开发者_JAVA百科re on Windows 7 ?
For example this application doesn't install on Windows 7 even when I did it with admin priviledge: http://www.bizagi.com/index.php?option=com_content&view=article&id=27&catid=5&Itemid=98
What did they forget to do ?
For example this application doesn't install on Windows 7 even when I did it with admin priviledge
The three most likely reasons are that they goofed and didn't test correctly. Or you have downloaded (or been given) the wrong version. Or you may have a corrupted or incomplete installer. Registering cabview.dll won't solve the problem of data1.cab being missing (a cab file is a cabinet file, it is a container for other files, much like a zip file).
So what do you need to do to insure that your software will deploy for sure on Windows 7 ?
Ensuring that your application is packaged using an industry standard MSI creation package is a good start. There are many applications out there that do this, such as InstallShield, Wise, WiX, InstallAware - just to name a few.
The very best thing you can do though is to author your install package so that it meets the Windows Installer and Logo Requirements. What happens with this is that you submit your built installer (with documentation) to an independant third party certification company who will then test it and decide if it meets the criteria laid down by Microsoft to say that your application installs and runs correctly on the target operating system. The tests are all slightly different depending upon which operating system you are seeking certification for1.
To ensure you have the best chance of installing correctly (and passing certification should you submit for it), you should follow the Windows Installer Best Practices - these apply no matter which application you use to build your installer. You can also run the required tests2 yourself by using Msival2.exe to run ICE (Internal Consistency Evaluator) tests. The installer tools and ICE files can all be found in the Microsoft Windows Software Development Kit.
1Passing these tests also achieves a Microsoft Partner Competency if you are part of the Microsoft Partner Program.
2The same tests that the certification company would run
If it won't install on Win7 then they probably didn't test on Win7. Not just the installer but the application also. Fixing the installer isn't a magic bullet.
I've helped many teams migrate from one OS to another. Win3.11 to NT 4.0, XP to Vista/7 and so on. I've yet to see a project that only had installer problems and nothing wrong with their app.
After all, if they didn't obey platform requirements for the installer, why would they have for the application?
精彩评论