トップ回答者
ネットワークパスを取得

質問
回答
-
1201とはWNetGetConnectionに書かれているERROR_CONNECTION_UNAVAILのことですよね。Remarksセクションを見よとあります。Remarksセクションには
he calling application is running in a different logon session than the application that made the connection, a call to the WNetGetConnection function for the associated local device will fail. The function fails with ERROR_NOT_CONNECTED or ERROR_CONNECTION_UNAVAIL.
と書かれていますがこれに該当していませんか?
# コンソールからログオンしてドライブを割り当てて、サービスプロセスからドライブ名を調べようとしたとか。
すべての返信
-
フォーラム オペレーターの星 睦美です。
Brillia さん、投稿ありがとうございます。
ユーザーからの回答が集まりやすいように、私のほうでWindows クライアント開発 - 全般 フォーラムに移動させていただきますね。
>1201:そのデバイスは現在接続されていませんが、接続は記憶されています。
質問に書いていただいた上記のエラーメッセージだけでは、フォーラムの回答者が問題がなにか探るための手がかりとして少ないように思います。ほかにもエラーに関する情報がないかイベントログなどを確認してみてはいかがでしょうか。(もしエラーの情報が無ければ、出力されていないということもトラブルシューティングのための情報になります。) 実行環境のOSの種類もあわせてお知らせください。
・フォーラムのご利用方法、ヘルプ、回答のガイドラインに関するお知らせ
※ユーザーから参考になる回答がありましたら投稿者からの[回答としてマーク]をお願いします。フォーラム オペレーター 星 睦美 - MSDN Community Support
-
ありがとうございます。
環境は、Windows7で、VC++2010を使用しております。
下記のソースを実行しています
LPCTSTR lpcPath = _T("V:"); DWORD dwRet = WNetGetConnection ( lpcPath, szRemoteName, &dwSize ); if ( NO_ERROR == dwRet ) { // 成功した場合は結果を表示 _tprintf ( TEXT("Local Name: %s\nRemote Name: %s\n"), lpcPath, szRemoteName); }
-
1201とはWNetGetConnectionに書かれているERROR_CONNECTION_UNAVAILのことですよね。Remarksセクションを見よとあります。Remarksセクションには
he calling application is running in a different logon session than the application that made the connection, a call to the WNetGetConnection function for the associated local device will fail. The function fails with ERROR_NOT_CONNECTED or ERROR_CONNECTION_UNAVAIL.
と書かれていますがこれに該当していませんか?
# コンソールからログオンしてドライブを割り当てて、サービスプロセスからドライブ名を調べようとしたとか。 -
ご返事ありがとうございます。
結果、取得できましたが、理解できません。
he calling application is running in a different logon session than the application that made the connection, a call to the WNetGetConnection function for the associated local device will fail. The function fails with ERROR_NOT_CONNECTED or ERROR_CONNECTION_UNAVAIL.
上記文章は、気になっていのですが、同じアカウントでエクスプローラから、ネットワークドライブ割り当てを行い、そのアカウント上で開発環境からのデバック実行をしていたので、特に気にしていませんでした。
しかし、開発環境からデバック実行せずに、直接エクスプローラから実行することで、取得が成功しました。
実は、開発環境を起動するとき、管理者権限として実行しているのですが、これが関係ありそうです。
ユーザー権限で開発環境を実行し、デバック実行すると取得が成功しました。結果からすると、同じアカウントでも権限昇格前・後のログオンセッションは異なるという理解でよいのでしょうか。
ただ、エクスプローラを管理者権限で実行をおこない、ネットワークドライブを付け直したのですが、
管理者権限で実行する開発環境から、デバック実行では取得はできませんでした。ご教授ください。
-