以编程方式解锁 applicationHost.config 中的部分

发布于 2024-12-28 02:17:02 字数 189 浏览 0 评论 0原文

我已经检查了 ServerManagaer 类,它提供了很多与 IIS 一起使用的功能,它还包含更新 applicationHost.config 文件中的值的方法,但我无法找到任何方法来解锁其中的部分。

例如,为此目的,使用 appcmd.exe unlock config 命令。我需要以编程方式做同样的事情。

I have checked ServerManagaer class and it gives a lot of functionality to work with IIS, it also contains methods to update values in applicationHost.config file, but I can't fine any way to unlock sections there.

For example for that purpose appcmd.exe unlock config command is used. I need to do the same programmatically.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

永言不败 2025-01-04 02:17:02

正如已经说过的,您可以运行 appcmd 进程。但只是提示,如果您不控制台弹出窗口,您可以重定向输出。

以下是来自 MSDN 的代码

// Start the child process.
 Process p = new Process();
 // Redirect the output stream of the child process.
 p.StartInfo.UseShellExecute = false;
 p.StartInfo.RedirectStandardOutput = true;
 p.StartInfo.FileName = "Write500Lines.exe";
 p.Start();
 // Do not wait for the child process to exit before
 // reading to the end of its redirected stream.
 // p.WaitForExit();
 // Read the output stream first and then wait.
 string output = p.StandardOutput.ReadToEnd();
 p.WaitForExit(); 

更多详细信息请参见此处

As already said you can run appcmd process. But just a hint that if you don't console to popup you can redirect the output.

Here is the code from MSDN

// Start the child process.
 Process p = new Process();
 // Redirect the output stream of the child process.
 p.StartInfo.UseShellExecute = false;
 p.StartInfo.RedirectStandardOutput = true;
 p.StartInfo.FileName = "Write500Lines.exe";
 p.Start();
 // Do not wait for the child process to exit before
 // reading to the end of its redirected stream.
 // p.WaitForExit();
 // Read the output stream first and then wait.
 string output = p.StandardOutput.ReadToEnd();
 p.WaitForExit(); 

More details see HERE

就是爱搞怪 2025-01-04 02:17:02

据我所知,您无法使用 ServerManager 执行锁定/解锁操作,但您仍然可以以编程方式执行 appcmd.exe 以获得所需的结果:

System.Diagnostics.Process appCmdProc = new System.Diagnostics.Process();
appCmdProc.StartInfo.FileName = "Path-to-Directory\appcmd.exe";
appCmdProc.StartInfo.Arguments = "unlock config /section:sectionName";
appCmdProc.Start();

To my knowledge you can't perform lock/unlock action using ServerManager but still you can execute appcmd.exe programatically to achieve the desired result:

System.Diagnostics.Process appCmdProc = new System.Diagnostics.Process();
appCmdProc.StartInfo.FileName = "Path-to-Directory\appcmd.exe";
appCmdProc.StartInfo.Arguments = "unlock config /section:sectionName";
appCmdProc.Start();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文