2011-11-08 15 views
6

Hiện tại, người dùng phải vào Control Panel> Programs> Bật hoặc tắt tính năng Windows, sau đó nhấp vào hộp kiểm của đối tượng địa lý mà họ muốn kích hoạt. Tôi muốn cung cấp cho họ khả năng thực hiện điều này từ ứng dụng của tôi.Làm thế nào bạn có thể lập trình tắt hoặc trên 'Windows Features'

Bất kỳ ý tưởng nào về cách tự động hóa quá trình này qua .NET (tốt nhất là trong C#)?

+1

bản sao có thể có của [Thêm tính năng Windows từ C#] (http://stackoverflow.com/questions/7075453/add-windows-feature-from-c-sharp) – CharlesB

+0

Câu trả lời đủ tốt cho tôi. Cảm ơn Charles. Tôi không chắc chắn làm thế nào tôi bị mất bài viết đó khi tôi đã tìm kiếm của tôi ở đây và google. – ymerej

Trả lời

0

Tôi làm điều này bằng NSIS cho IIS sử dụng:

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

Bạn có thể gọi chương trình pkgmgr từ C# chương trình của bạn và thường bạn sẽ tạo ra một file tự động với các hướng dẫn cho pkgmgr để sử dụng cho tính năng này.

Bạn cần phải sử dụng

System.Diagnostics.Process.Start(). 
7

Nếu bạn chỉ nhắm mục tiêu nền tảng mới hơn (> = Windows Vista) sau đó DISM.exe là tiện ích mới nhất; nó thay thế 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

Ví dụ cuộc gọi (chạy cho tất cả các tính năng cần thiết):

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

Để tìm một tính năng, sử dụng này

dism.exe /online /get-features | find “Tablet” 

xem: http://adriank.org/microsoft-ocsetupdism-component-name-list/ để biết thêm thông tin.

Các vấn đề liên quan