首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过C#调用DISM

通过C#调用DISM
EN

Stack Overflow用户
提问于 2017-12-13 10:22:18
回答 2查看 2.2K关注 0票数 3
代码语言:javascript
复制
Process p = new Process();
p.StartInfo.FileName = "dism";
p.StartInfo.Arguments = "/online /get-packageinfo /packagename:WinEmb-File-Based-Write-Filter~31bf3856ad364e35~amd64~~6.1.7601.17514";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.Start();

string output = p.StandardOutput.ReadToEnd();

p.WaitForExit();
p.Close();

我得到输出:

您不能使用32位版本的DISM为运行中的64位操作系统提供服务.请使用与您的计算机体系结构相对应的DISM版本。

为FileName尝试:"C:\WINDOWS\SYSTEM32\dism.exe“和"C:\WINDOWS\SYSWOW64\dism.exe”

结果还是一样的。

机器正在Windows 7嵌入式操作系统上运行。

编辑:已尝试:

Calling dism.exe from System.Diagnostics.Process Fails

但还是没用..。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-12-13 12:15:05

找到解决办法了!使所有项目/设置64位构建。

通过遵循代码,它的工作:

代码语言:javascript
复制
ProcessStartInfo psi = new ProcessStartInfo("cmd");
psi.UseShellExecute = false;
psi.ErrorDialog = false;
psi.RedirectStandardError = true;
psi.RedirectStandardInput = true;
psi.RedirectStandardOutput = true;

Process plinkProcess = new Process();
plinkProcess.StartInfo = psi;
plinkProcess.Start();

StreamWriter inputWriter = plinkProcess.StandardInput;
StreamReader outputReader = plinkProcess.StandardOutput;
inputWriter.WriteLine("dism /online /get-packageinfo /packagename:WinEmb-File-Based-Write-Filter~31bf3856ad364e35~amd64~~6.1.7601.17514");
inputWriter.WriteLine("exit");
inputWriter.Flush();

plinkProcess.WaitForExit();

string strOutput = outputReader.ReadToEnd();

plinkProcess.Close();
票数 2
EN

Stack Overflow用户

发布于 2018-10-05 15:03:47

虽然已经回答了,但我已经多次遇到这个问题。WinPE与不同的体系结构不兼容。因此,64位WinPE必须运行为其架构编译的程序。至于功能减退,在安装WAIK或Windows工具包时,有64位和32位的版本。64位功能函数C:\Program \Windows AIK\Tools\amd64\Servicing\dism.exe 32位功能函数C:\Program \ AIK\Tools\x86\Servicing\dism.exe

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47790611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档