【问题标题】:VB.NET 2017 refer to .exe file within my projectVB.NET 2017 在我的项目中引用 .exe 文件
【发布时间】:2017-03-23 12:37:56
【问题描述】:

你好一直在搜索,但我得到的只是关于月球旅行和 e=mc2 的结果。

所以为了尽可能具体,我将包括屏幕截图:)

  1. 我运行 Microsoft Visual Studio 2017
  2. 基于表单的应用程序
  3. 我的知识基本为零,我研究code-test,最终得到结果。

故事:

我已经像这样在我的项目中添加了一个 .exe 文件; Screenshot of Solution Explorer 我想要做的是按下一个按钮,它将启动应用程序:

    Private Sub RunVersion11ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RunVersion11ToolStripMenuItem.Click
    Dim TeamViewer11Path As String = ("C:\Program Files (x86)\TeamViewer\TeamViewer.exe")
    Process.Start(TeamViewer11Path)

End Sub

Private Sub RunVersion12packedToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RunVersion12packedToolStripMenuItem.Click
    Dim TeamViewer12Path As String = ("?!?!?!?! this file is included in the proj as seen in picture 1, the Private Sub above this is a locally installed one.")
    Process.Start(TeamViewer12Path)
End Sub

正如您在上面看到的,第一个子执行一个已经安装在机器上的应用程序。第二个子我要运行如上图所示的.exe。

但是在谷歌搜索等之后,所有内容都是指文件的完整路径,例如:C:\Users\XXXX\documents\visual studio 2017\Projects\WindowsApp6\WindowsApp6\ts12.exe

但如果我在另一台计算机上运行该应用程序,显然这将不起作用。

我需要什么帮助:

我应该在我的 Process.Start 中添加什么以指向解决方案资源管理器中包含的文件?像 Process.Start("\root\app\ts3.exe") 或类似的,在调试和发布中都有效。

请注意,我是新手,所以请提供对低于您自己专业水平的人有意义的示例。谢谢! :)

【问题讨论】:

    标签: vb.net visual-studio-2017 process.start


    【解决方案1】:

    您需要确保解决方案资源管理器中 .exe 文件上的“复制到输出目录”属性设置为“如果更新则复制”或“始终复制”。

    进入输出目录的代码:

        Dim strOutputDirectory As String = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)
    
        Process.Start(System.IO.Path.Combine(strOutputDirectory, "ts12.exe"))
    

    【讨论】:

    • 感谢您的回复。我添加了您的示例,并尝试了我的应用程序的发布和发布版本,不幸的是,该应用程序甚至没有启动。但是调试版本可以。但是当点击按钮时它说: System.ArgumentException: Search path is not a valid format.
    • @Andreas :用Application.StartupPath 代替那个长语句替换strOutputDirectory,它应该可以工作。
    猜你喜欢
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多