1

我在 VB.NET 中有一个现有的应用程序,我需要安装一个用于无人值守系统的免费软件 EXE。我知道我必须安装的路径。

注意:我只需要编写代码来在当前代码库中执行它,并且不能为其创建批处理文件。

到目前为止,我已经尝试了以下步骤:我使用 Shell 命令来执行 EXE 文件,并提供如下附加参数:

Shell("C:\MOVEit_Freely_Install.exe /q C:\yourlogfilename.log")

Shell("C:\MOVEit_Freely_Install.exe /s")

Shell("C:\MOVEit_Freely_Install.exe /silent")

Shell("C:\MOVEit_Freely_Install.exe /qb C:\yourlogfilename.log")

它只是打开安装程序,我必须单击“下一步”按钮,然后它会得到安装(我不想要)。

你能就此提出任何建议吗?

谢谢,普内特

4

2 回答 2

3

从一个普通的 cmd 窗口执行文件c:\moveit_freely_install.exe /?,它应该告诉你是否有一个静默选项。

或者,如果它包装了一个 .msi,您可能能够做到这一点并使用常规的 microsoft 安装程序开关使其安静。在这些情况下,我使用 7zip 来提取 exe 内容。如果您有 7zip,请右键单击该文件并选择 7zip -> 解压缩。

如果您确实找到了 msi,以下是您感兴趣的选项:

`/q   n|b|r|f                                      Sets the UI level.

                                              q , qn - No UI.

                                              qb - Basic UI.

                                              qr - Reduced UI. A modal
                                              dialog box is displayed
                                              at the end of the
                                              installation.

                                              qf - Full UI. A modal
                                              dialog box is displayed
                                              at the end of the
                                              installation.

                                              qn+ - No UI. However, a 
                                              modal dialog box is
                                              displayed at the end of
                                              the installation.

                                              qb+ - Basic UI. A modal
                                              dialog box is displayed
                                              at the end of the 
                                              installation. If you 
                                              cancel the installation, 
                                              a modal dialog box is 
                                              not displayed.

                                              qb- - Basic UI with no
                                              modal dialog boxes. 
                                              The "/qb+-" switch
                                              is not a supported UI 
                                              level.`
于 2012-10-23T11:51:22.760 回答
0

这样的事情可能会有所帮助:

Dim myProcess As New Process 
Dim param as String = "/?"
myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden 
myProcess.StartInfo.CreateNoWindow = True 
myProcess.StartInfo.FileName = ("moveit_freely_install.exe" & param) 
myProcess.Start()

它使用它的参数加载您的应用程序,但没有窗口。

于 2015-11-14T14:06:38.500 回答