I think the file _default.pif cannot be overwritten by my MSI because
it is under Windows File Protection. Even if I delete the file the MSI
still cannot write a new _default.pif
Is there any way around this?
On Sun, 09 Nov 2008 20:19:05 +0000,
x64@favorite.my wrote:
>I am writing an MSI installation package which needs to give Users
>access to win.ini and _default.pif, and further to overwrite
>_default.pif with a new file. Both of these are in the system root
>directory which is usually c:\windows
>
>The code I have come up with is;
>
>takeown /A /F %systemroot%\win.ini
>
>takeown /A /F %systemroot%\_default.pif
>
>icacls %systemroot%\_default.pif /grant Users:F
>
>icacls %systemroot%\win.ini /grant Users:F
>
>This works for Vista. However \windows\_default.pif is a windows
>protected file so when the installer tries to write to it, it fails
>and the original file remains in place. How can I get around windows
>file protection so my installer can write a new _default.pif file?
>Alternatively how can I edit the _default.pif file in the MSI install
>so the "close window on exit" checkbox gets unchecked, which is what I
>am trying to achieve?
>
>Next question. How can I differentiate between XP and Vista in my
>batch file / command script? I can find no environment variable to
>tell me which version of Windows is running, although there is a ver
>command to tell the user the version number. Can I pipe the output of
>the ver command somehow to get the version number, how would I do
>this, and is there a simpler way using a return code from a small C
>program or something?
>
>Thanks very much for answers. Sorry about the mega crosspost but I
>really need to find some answers to these questions.