一般ユーザでは C:\Program Files
以下へファイルをコピーすることはできないので、管理者権限で自分自身を起動しなおすようにする。
make.cmd
setlocal set "EXE=%~dp0\bin\Release\HogeHoge.exe" call :"%1" endlocal exit /b :"install" powershell Start-Process "%~dpnx0 install_" -verb runas exit /b :"install_" copy "%EXE%" "C:\Program Files\nyaosorg\." copy "%EXE:.exe=.ini%" "C:\Program Files\nyaosorg\." pause exit /b
make install
とタイプすると、UACダイアログが表示されるので、はい(Y)
を選ぶと、管理者権限で目的のファイルを C:\Program Files\nyaosorg
以下へコピーしてくれる。
%~dp0 とか %EXE:exe=.ini% などは環境変数の置換で、これらは cmd /h
、 cmd /c set /?
、 cmd /c for /?
などでガイドが出てくるので、そちらを参照いただきたい(つきはなし)