ネットワークドライブ(\servernameまたは\ipadress)にアクセスしようとしています。ドライブはアプリケーションを介してのみアクセスされ、ネットワークドライブへのログインはアプリケーションによってのみ使用されることになっているという考え方です。これまでのところ、私が欲しいもののように見えるWNetUseConnection関数(http://msdn.microsoft.com/en-us/library/aa385482%28VS.85%29.aspx )のみを見つけました。残念ながら、私はそれを動作させることができません。コードは次のようになります。
NETRESOURCE nr;;
nr.dwType = RESOURCETYPE_DISK;
wchar_t remoteName[] = L"\\\\myremotenetworkdrive";
nr.lpRemoteName = remoteName;
wchar_t pswd[] = L"mypswd";
wchar_t usrnm[] = L"usrname";
int ret = WNetUseConnection(NULL, &nr, pswd, usrnm, 0, NULL, NULL, NULL);
std::cerr << "return code: " << ret << std::endl;
戻りコードは最初は1200(ERROR_BAD_DEVICE)であり、別の関数呼び出しが487(ERROR_INVALID_ADDRESS)に変更された後です。アドレス(iamが4つのバックスラッシュをそこに置く権利があるが、2つを使用して、またはまったく使用せずに試した場合)ユーザー名とpswdは正しいです。
だから基本的に私の質問は:どうすればoboveコードを機能させることができますか?私の仕事を考えると、これは正しいアプローチですか(そうでない場合はどうしますか)?