4

Windows XP で API メソッド WNetAddConnection2 を使用してネットワーク ドライブ (WebDAV) をマッピングする際に問題が発生しました。Windows 7 の下で、または魅力的に動作します。私のコード:

function ConnectDrive(Drive: string; Folder: string;
Username: string; Password: string; RestoreAtLogon: Boolean): HRESULT;

var
  NetResource: TNetResource;
  dwFlags: DWORD;
begin
  with NetResource do
  begin
    dwType := RESOURCETYPE_DISK;
    lpLocalName := PChar(Drive);
    lpRemoteName := PChar(Folder);
    lpProvider := nil;
  end;

  if (RestoreAtLogon) then
    dwFlags := CONNECT_UPDATE_PROFILE
  else
    dwFlags := 0;

  Result := WNetAddConnection2(NetResource, PChar(Password),
    PChar(Username), dwFlags);
end;

Windows に接続しようとするたびに、「ネットワーク名が見つかりません」または「ネットワーク パスが見つかりません」と表示されます。

前に言ったように、Windows 7 では問題ありません。

Netdrive のような商用ツールを使用する場合、このプログラムは、XP、Vista、または Windows 7 でドライブを問題なくマウントできます。

誰かアイデアはありますか?

前もって感謝します

4

1 に答える 1

1

あなたの問題には無数の理由があるかもしれません...しかし、あなたは試すことができます:

  • 最も重要なこと:Windowsインストールに完全にパッチを適用します(Windows Update-最新のSPと更新)。修正された可能性のあるバグと戦うことができます(webdav-redirector-list
  • webdavサーバーの名前を解決できることを確認してください(netbios(wins)、dns、hostsファイルを使用していますか?)
  • FQDNを指定します
  • IPアドレスを指定する
  • UNC()の代わりにhttp://servernameまたはを使用してみてくださいhttpS(if supported)\\servername
  • NET USEコマンドを使用して、マッピングが成功するかどうかを確認してください(ネットワークドライブ文字としてのMapping WebDAVフォルダー
  • IISレベルでの認証構成を確認します(WebDavネットワークドライブのマッピング
  • これらの回避策を確認してください:WebDav @ Wikipedia
  • ネットワークスニファを使用して、障害時のネットワークトラフィック(WireShark、Network Monitorなど)をキャプチャして分析します。

お役に立てれば!

于 2012-10-25T21:39:33.203 に答える