如何让我的C ++ Win32 .net-framework安装程序保持沉默?
我试过sfxmaker软件& ussf.exe,但是我收到了一个未知的安装程序错误。
命令行参数/ S和/ SD对我不起作用。
我使用的部分代码:
if( !CreateProcess( NULL,
".\\InstallationFiles\\dotnetfx 35 SP1 Full.exe /S",
NULL,
NULL,
FALSE,
0,
NULL,
NULL,
&si,
&pi )
)
答案 0 :(得分:4)
你试过dotnetfx 35 SP1 Full.exe /?
吗?
答案是:dotnetfx 35 SP1 Full.exe /Q
以静默方式启动安装程序。
还要注意CreateProcess
空格的长名称,考虑引用命令名称。 CreateProcess()
reference州:
如果您使用的是包含空格的长文件名,使用带引号的字符串来指示文件名的结束位置和参数的开始;否则,文件名不明确。例如,考虑字符串“c:\ program files \ sub dir \ program name”。可以通过多种方式解释此字符串。系统尝试按以下顺序解释可能性:
c:\ program.exe files \ sub dir \ program name
c:\ program files \ sub.exe dir \ program name
c:\ program files \ sub dir \ program.exe name
c:\ program files \ sub dir \ program name.exe
答案 1 :(得分:3)
您可能正在寻找安静的模式。 /q
。小心检查返回码:)
请参阅this MSDN page了解详情。
答案 2 :(得分:0)
我明白了,谢谢大家, 我的解决方案是:
if(!CreateProcess(NULL,//没有模块名称(使用命令行) “。\ InstallationFiles \ dotnetfx35SP1Full.exe / q / norestart / ChainingPackage ADMINDEPLOYMENT”,... //我只提到了2个参数。
检查一下: http://msdn.microsoft.com/en-us/library/ee390831(V = VS.100)的.aspx [^]
注意:但朋友们在桌面上看不到任何改进,请检查任务管理器以查看它。