View Single Post
  #1 (permalink)  
Old 11-09-2008
x64@favorite.my
 

Posts: n/a
Vista system files win.ini / _default.pif
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.
Reply With Quote
Sponsored Links