我尝试以管理员身份运行cmd命令。但CMD窗口意外关闭。如果CMD窗口停留,我可以看到错误。我尝试使用%// Get size params and R
[n,d] = size(DataMatrix);
[R,err] = cholcov(I,0);
%// Calculate constants : "logSqrtDetSigma" and "d*log(2*pi)/2`"
K1 = sum(log(diag(R)));
K2 = d*log(2*pi)/2;
%// Major thing happening here as we calclate "X0" for all iterations
%// in one go with permute and bsxfun
diffs = bsxfun(@minus,DataMatrix,permute(DataMatrix,[3 2 1]));
%// "Sigma" is an identity matrix, so it plays no in "/R" at "xRinv = X0 / R".
%// Perform elementwise squaring and summing rows to get vectorized "quadform"
quadform1 = squeeze(sum(diffs.^2,2))
%// Finally use "quadform1" and get vectorized output as a 2D array
p_out = exp(-0.5*quadform1 - K1 - K2)
我正在尝试以管理员身份运行代码process.WaitForExit();
。
这是我的代码。
zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk
有没有办法让CMD窗口保持运行/显示?
答案 0 :(得分:1)
您正在从runas.exe
可执行文件开始进程。这不是如何提升过程。
相反,你需要使用shell execute来启动你的excutable,但是使用runas
动词。沿着这些方向:
ProcessStartInfo psi = new ProcessStartInfo(...); // your command here
psi.UseShellExecute = true;
psi.Verb = "runas";
Process.Start(psi);
答案 1 :(得分:0)
从您的流程中捕获输出:
proc.StartInfo = procStartInfo;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start()
// string output = proc.StandardOutput.ReadToEnd();
string error = proc.StandardError.ReadToEnd();
proc.WaitForExit();
然后对输出做一些事情。
注意:您不应该尝试同时同时读取两个流,因为存在死锁问题。您可以为其中一个或两个添加异步读取,或者只是来回切换,直到您完成故障排除。
答案 2 :(得分:0)
以下方法确实有效......
\n