- ベストアンサー
ターミナルサービスでクライアントのローカルディスクにアクセスしたい
ターミナルサービスを使用しています。 VB.NETでクライアントのローカルデスクにアクセスしたいのですが、アクセス方法が分かりません。 一応、ターミナルサービスに接続する際に、「ローカルディスク」のローカルデバイスのデスクドライブにチェックを付けているので、ターミナルサービスに接続した際にエクスプローラー上ではクライアントのディスクを使える状態にはなっています。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>WTSQuerySessionInformation リモートクライアント名かIP取れました?私は取れませんでした。 リモートユーザは、ターミナルサービスマネージャを見ると、各セッションIDごとに管理されているようですね。 一応セッションIDを取得する方法です。 別の方法で取ることができるのかも知れませんが、私はこれぐらいしか知りません。 Private Function GetセッションID() As Integer Const con_SessionId As String = "SessionId" Dim obj32Proc As Object Dim objProperty As Object Dim intCount As Integer = 0 Dim strSQL As String = "SELECT " & con_SessionId & " FROM Win32_Process WHERE handle = " & Process.GetCurrentProcess.Id For Each obj32Proc In GetObject("winmgmts:").ExecQuery(strSQL) For Each objProperty In obj32Proc.Properties_ If (objProperty.Name.ToString = con_SessionId) Then Return CType(objProperty.Value, Integer) End If Next Exit For Next End Function アクセスする方法は http://www.microsoft.com/resources/documentation/WindowsServ/2003/standard/proddocs/ja-jp/Default.asp?url=/resources/documentation/WindowsServ/2003/standard/proddocs/ja-jp/mstsc_local_files.asp \\マシン名\ドライブ だそうです。(と書いている最中にtodo36さんの書きを発見^^;) ただ接続先が別ドメインの場合、ドメイン越えでローカルにアクセスするようになるようです。 ドメインをまたぐLAN環境にしておかないと、クライアント環境の整備だけではつながりませんでした。 質問の内容が.NETっていうより、↓かな^^; TOP > コンピューター [技術者向け] > 運用・管理 http://okweb.jp/oshiete.php3?c=708 セッションIDからリモートクライアント情報が抜けたら何とかいけると思うのですが、、、
その他の回答 (1)
- todo36
- ベストアンサー率58% (728/1234)
へえー。 2003から追加された機能なのですね。 http://support.microsoft.com/?scid=kb;ja;313292&spid=6519&sid=global こちらには実験する環境ないけれど、 クライアント上のファイルのショートカットを作ってプロパティを見れば分かるのでは?
お礼
返信ありがとうございます。 質問した後、ターミナルサービス上でエクスプローラを使ってクライアントのディスクにあるフォルダーを見てみたら「\\tsclient\A\フォルダー名」と出てました。 無事解決しました。
お礼
返信ありがとうございます。 クライアントのローカルディスクへのアクセス方法は何とかなりました。エクスプローラからクライアントのディスクを見てみたら「\\tsclient\A\フォルダー名」になってました。 これでVB.netでアクセスできたので多分問題ないかと思います。ターミナルサービスでローカルディスクにアクセスする方法は他にもあったんですね。気付きませんでした。 後、WTSQuerySessionInformationの件ですが確かに、教えてもらったソースを貼り付けてみて実行してみたのですが、空文字が返ってきていました。 自分でも色々調べてみたのですが、WTSQuerySessionInformationに関する情報はあまり出てないですね。私の調べ方が悪いのかも知れないけど。 このソースでもう一回やってみます。 ありがとうございました。