2012-04-29 50 views
0

我需要查詢Windows域上遠程工作站的文件系統。程序應該搜索遠程文件系統中是否存在特定的文件名和文件路徑。例如,假設我想知道在10,000臺計算機的域中的任何工作站上是否存在「c:\ program files \ mozilla \ firefox.exe」或「c:\ program files \ chrome \ chrome.exe」。在Windows域中搜索並從遠程工作站獲取文件信息

我知道哪些選項: 1)使用Win32 API和使用UNC路徑與像\服務器名\ C $ \文件夾管理共享的訪問只有C#代碼與Windows模擬(我不知道,我們需要運行的應用程序。從域名服務器到工作站管理員共享訪問)。

2)將WMI與C#管理類一起使用,通過Domain Admin憑證模擬獲得遠程系統訪問權,然後使用查詢獲取遠程文件信息。

我已經實現了這兩種方案,但我不確定哪一個最好,並且實時性能良好。我只用我的2-3個系統網絡進行過測試。

我在我的腦海裏有問題。

1)哪種選擇最適合這種情況? 2)哪一個更快,更安全和一致?

請給我建議這些或任何最佳選項可用於上述要求之一。

謝謝你, 拉維

回答

1

無需從域控制器上運行此。通過適當的權限,您可以從任何地方運行WMI查詢。實際上,將它們推送到DC會爲查詢添加一跳,並且可能比直接查詢要慢。如果您有進程的域管理權限,我只需直接查詢文件存在檢查的unc路徑,然後完成。

+0

哪一個更好?使用prv?的WMI或UNC路徑是Active Directory - LogonUser將努力獲得prv訪問UNC。 –

+0

最終,我不知道你可能會發現任何一種方法都有很大的不同。爲了健壯性,我會避免使用管理共享,並可能使用/鼓勵WMI選項。 –

+0

感謝大衛,其實我處於一種情況,我必須決定其中一個選項,對我來說還有一個問題是我沒有域來測試我的代碼。我正在使用我的機器進行編碼和測試,這個小型網絡永遠不會給出真正的結果。這就是爲什麼我要求專家確定最佳選擇。 - 非常感謝 –

相關問題