如何从代码中引用项目中存储的批处理文件

问题描述 投票:0回答:1

我有一个从外部调用 .bat 文件的 VB 应用程序,我弄清楚了如何将 bat 文件添加到项目中,但是如何在代码中引用它们的位置与在解决方案文件夹外部引用的位置

例如

My.code.reference.location(somefile.bat)
not >>> Process.Start("C:\Users\person\file.bat")

我的实际工作

Try

Dim startInfo As New ProcessStartInfo("cmd")

startInfo.WindowStyle = ProcessWindowStyle.Hidden

startInfo.Arguments = "/C C:\Users\luna\install.bat"

startInfo.RedirectStandardOutput = True

startInfo.UseShellExecute = False

startInfo.CreateNoWindow = True

Dim p = Process.Start(startInfo)

Dim result = p.StandardOutput.ReadToEnd()

p.Close()

MsgBox("Service Installed")

Catch ex As Exception

MsgBox("Error")

End Try

我的问题是,它指向路径和批处理文件的行,我如何在项目中包含批处理文件并在其内部引用的位置与它现在指向的路径编写脚本

vb.net file reference location
1个回答
0
投票

这可能有帮助,值得尝试;

  • 在解决方案资源管理器中右键单击您的项目→添加→现有项目。
  • 选择您的 .bat 文件。
  • 将其构建操作设置为内容并复制到输出目录进行复制 总是。

参考代码中的文件:

使用项目目录中 .bat 文件的相对路径:

Dim batFilePath As String = Path.Combine(Application.StartupPath, "install.bat")
Dim startInfo As New ProcessStartInfo("cmd") With {
    .WindowStyle = ProcessWindowStyle.Hidden,
    .Arguments = "/C " & batFilePath,
    .RedirectStandardOutput = True,
    .UseShellExecute = False,
    .CreateNoWindow = True
}
Dim p = Process.Start(startInfo)
Dim result = p.StandardOutput.ReadToEnd()
p.Close()
MsgBox("Service Installed")
© www.soinside.com 2019 - 2024. All rights reserved.