當前,用戶必須進入控制面板>程序>打開或關閉Windows功能,然後單擊選中要激活的功能框。我想讓他們能夠從我的應用程序中執行此操作。如何以編程方式關閉或打開「Windows功能」
關於如何通過.NET自動執行此過程的任何想法(最好在C#中)?
當前,用戶必須進入控制面板>程序>打開或關閉Windows功能,然後單擊選中要激活的功能框。我想讓他們能夠從我的應用程序中執行此操作。如何以編程方式關閉或打開「Windows功能」
關於如何通過.NET自動執行此過程的任何想法(最好在C#中)?
我使用做到這一點使用NSIS的IIS:
$Sysdir\pkgmgr.exe /n:$Temp\iis7Unattend.xml
您可以從C#程序調用PKGMGR程序,通常你會創建一個指令的無人蔘與文件的PKGMGR要使用的功能。
您需要使用
System.Diagnostics.Process.Start().
如果只針對新平臺(> = Windows Vista中),那麼dism.exe是最新的工具;它取代了pkgmgr。
調用示例(運行所需的所有功能):
dism.exe /online /enable-feature /featurename:IIS-WebServerRole
要查找功能,使用此
dism.exe /online /get-features | find 「Tablet」
更多信息請參見:http://adriank.org/microsoft-ocsetupdism-component-name-list/。
可能的重複[從C#添加Windows功能](http://stackoverflow.com/questions/7075453/add-windows-feature-from-c-sharp) – CharlesB
足夠好的答案給我。感謝Charles。我不確定當我在這裏和谷歌搜索時我是如何錯過那篇文章的。 – ymerej