2015-05-09 68 views
0

我在Windows 10的Netsh助手DLL在Windows 10

編程使用.NET Framework一些東西,嗯,我開始了cmd.exe的過程中,我試圖用命令netsh wlan,但它不工作並返回類似cannot find command wlan

我單獨啓動cmd.exe時仍然可以運行netsh wlan命令;當我在.Net應用程序中啓動cmd.exe時,無法運行它。 我也發現助手dll列表(當我使用netsh show helper命令)不一樣,當我單獨啓動cmd.exe。我試過運行netsh add helper wlancfg.dll,但它不起作用。

我曾經在Windows 7,Windows 8和Windows 8.1上做過同樣的事情。所有它的工作像一個魅力,但它不適用於Windows 10.

編輯:我認爲問題不是我的代碼是如何,但netsh不加載wlancfg.dll,因爲當我使用System.Diagnostics.Process.Start("cmd.exe")啓動它並鍵入netsh,它有同樣的問題。

+0

請張貼您的代碼。 –

回答

2

好吧,我發現自己的答案。 問題是我的Windows 10是64位。所以有一些WoW64文件系統重定向。 只需使用API​​ Wow64DisableWow64FsRedirection即可修復它。

1

我使用這個命令在我的應用程序與CMD交互試試這個:

Process.Start(new ProcessStartInfo("cmd.exe", "/c netsh wlan ...") 
    { 
     WindowStyle = ProcessWindowStyle.Hidden 
    }); 
+1

這是實現它的適當方式。 –

+0

但是我要運行幾個命令? – NoobTW

+0

您可以根據需要創建此過程,並且可以使用/ k不關閉其他命令的cmd,您可以查看更多信息的其他參數[cmd](http://ss64.com/nt/cmd)。 html) –