【发布时间】:2011-03-26 18:58:30
【问题描述】:
一些示例代码:
var psi = new ProcessStartInfo();
psi.FileName = "path to update.exe";
psi.Arguments = "arguments for update.exe";
psi.Verb = "runas";
var process = new Process();
process.StartInfo = psi;
process.Start();
process.WaitForExit();
参考:0xA3.
如果可能,您可以在代码中以编程方式将什么类型的对象传递给“.Arguments”属性?通常,您可以传递 int 或 string 类型。我想知道您是否可以传入更复杂的类型,例如 DirectoryInfo[] 或 FileInfo[]?有人知道这是否可能吗?如果没有,我将不得不想出别的办法?
为什么?我正在尝试从一个非常大的后台工作人员中删除一些问题代码,唯一的解决方案是将我需要的数据传递到一个进程中,该进程将处理我需要在一个完全不同的进程中完成的工作。问题这个问题代码总是抛出权限 - 应用程序没有权限。
【问题讨论】:
-
为什么需要一个单独的进程?
-
我将需要提升权限的问题代码发送到另一个单独的 .exe 文件中。
标签: c# winforms .net-3.5 process backgroundworker