Call command line after installation in Wix

2019-06-28 02:53发布

I am using wix and want to call command line after installation.

How can I do this?

My command line is here "bcdedit.exe /set {current} nx AlwaysOff" // this makes dep off

Yes, I've read about custom actions, but I didn't see any example with command line.

P.S. bcdedit is usual exe in Win 7 and higher.

P.S. currently I have next script and it does not work:

          Directory  ="INSTALLLOCATION"
          ExeCommand ='echo hello> echo_test.txt'
          Execute    ="immediate"
          Return     ="asyncNoWait"
                />

标签: wix wix3.5
3条回答
走好不送
2楼-- · 2019-06-28 03:30

echo is not an executable, it is the command of the command processor cmd.exe. Change your ExeCommand value to cmd.exe /c "echo hello >echo_test.txt".

Your echo_test.txt would be in an arbitrary directory, you have to use absolute paths to get predictable results.

查看更多
等我变得足够好
3楼-- · 2019-06-28 03:43

Ok, this example works...

<CustomAction Id         ="echo_test"                     
              Directory  ="INSTALLLOCATION"
              ExeCommand ='NOTEPAD.EXE echo_test.txt'
              Execute    ="immediate"
              Return     ="asyncNoWait"
                    />

My test example with echo didn't worked for some reason. And bcdedit does not exist on WinXP, where I am testing now...

查看更多
闹够了就滚
4楼-- · 2019-06-28 03:43

Hi there are lots of example available on net...

try these links

http://wix.sourceforge.net/manual-wix2/qtexec.htm

Execute Command Line In WiX Script?

WiX - CustomAction ExeCommand - Hide Console

Or try this example:

 <CustomAction Id="SetQtExecCmd" Property="SetQtExec"
       Value="&quot;[PutPathOfThisFileHere]bcdedit.exe&quot; /set {current} nx AlwaysOff" />
<CustomAction Id="SetQtExec" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="immediate" Return="check" />
查看更多
登录 后发表回答