0

ログインしたコンピューターの資格情報を使用して、任意のコンピューター(リモートまたはローカル)にネットワークドライブをマウントするためのWMIクラス関数を作成しようとしています。

これは、ヘルプデスクのスタッフがリモートPCで最初の行の修正を行うために作成した、より大きなプロジェクトのクラスです。技術者はマシン名またはIPアドレスを入力すると、アプリがそれに接続し、技術者がPCにリモート(VNC)することなく、いくつかのボタンをクリックしていくつかの基本的な項目を修正できるようにします。

インターネット全体で、WMIよりもはるかに簡単な方法であることを読みましたが、アプリのリモート性のため、ローカルAPI呼び出しを使用したり、スクリプトをアップロードしてプロセスを介して実行したりすることを心配したくありません。始める。また、他の関数もすでにWMIに含まれているので、コードベースを同じに保ちたいと思います。

基本的な考え方はにマウントH:することです//fileserver.example.com/$username

NetFixerはすでに本番環境で使用されているので、コードをきれいに保つようにしています。

ここに画像の説明を入力してください

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Management;

namespace WMIcontrols
{
  public class Remote
  {

   public string target;

   //Some code skipped here for simplicity sake... 

   public bool MountNetDrive(string DriveLetter, string MountLocation)
    {
      try
      {
          //Mount the network drive
          return true;
      }
      catch
      {
          //Mount Failed
          return false;
      }
    }
  }
}
4

1 に答える 1

2

これはWMIを使用していませんが、あなたが望むものを達成し、非常に簡単です

System.Diagnostics.Process.Start("cmd", "/c net use x: \\fileserver.example.com /user:Username Password");
于 2012-11-08T00:07:28.497 に答える