2011-11-08 97 views
6

當前,用戶必須進入控制面板>程序>打開或關閉Windows功能,然後單擊選中要激活的功能框。我想讓他們能夠從我的應用程序中執行此操作。如何以編程方式關閉或打開「Windows功能」

關於如何通過.NET自動執行此過程的任何想法(最好在C#中)?

+1

可能的重複[從C#添加Windows功能](http://stackoverflow.com/questions/7075453/add-windows-feature-from-c-sharp) – CharlesB

+0

足夠好的答案給我。感謝Charles。我不確定當我在這裏和谷歌搜索時我是如何錯過那篇文章的。 – ymerej

回答

0

我使用做到這一點使用NSIS的IIS:

$Sysdir\pkgmgr.exe /n:$Temp\iis7Unattend.xml 

您可以從C#程序調用PKGMGR程序,通常你會創建一個指令的無人蔘與文件的PKGMGR要使用的功能。

您需要使用

System.Diagnostics.Process.Start(). 
7

如果只針對新平臺(> = Windows Vista中),那麼dism.exe是最新的工具;它取代了pkgmgr。

  1. http://technet.microsoft.com/en-us/library/dd799309(WS.10).aspx
  2. http://msdn.microsoft.com/en-us/library/dd371719(v=vs.85).aspx

調用示例(運行所需的所有功能):

dism.exe /online /enable-feature /featurename:IIS-WebServerRole 

要查找功能,使用此

dism.exe /online /get-features | find 「Tablet」 

更多信息請參見:http://adriank.org/microsoft-ocsetupdism-component-name-list/

相關問題