【问题标题】:process.start from a variable location %temp%process.start 从变量位置 %temp%
【发布时间】:2012-10-19 22:26:49
【问题描述】:

我有程序将文件解压缩到 %temp%\myfolder\

我需要从该位置运行一个文件。 我已经尝试过 shell 和 process.start 但最终我正在寻找:

Process.start("%temp%\myfolder\start.cmd")

我还在 msdn 上查看了 getenvironmentvariable,但没有任何效果。 :(

更新:简而言之,这就是我所拥有的

Imports system.diagnostics
Imports system.IO

System.Environment.GetEnvironmentVariable("TEMP")
Dim temp As String = System.IO.Path.GetTempPath

Things I have tried
process.start("%temp%\myfolder\start.cmd")
process.start("temp" & "myfolder\start.cmd")

我收到一条错误代码,提示“找不到文件”。但是,如果我将 %temp%\myfolder\start.cmd 复制到 run 或 cmd.exe 中,程序就会运行。

【问题讨论】:

标签: environment-variables process.start temp


【解决方案1】:

先设置

Environment.CurrentDirectory = Environment.GetEnvironmentVariable("temp")
' Possible variables include temp, tmp, and windir for examples.

此命令会将当前目录放置为 C:\Users\ (currentuser)\appdata\local\temp 或为变量设置的任何位置。然后运行进程启动。它应该是这样的:

Environment.CurrentDirectory = Environment.GetEnvironmentVariable("temp")
Process.start("myfolder\start.cmd")

【讨论】:

    猜你喜欢
    • 2012-03-29
    • 1970-01-01
    • 2012-09-05
    • 2014-04-15
    • 1970-01-01
    • 1970-01-01
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多