- - PR -
アプリケーションよりログインユーザ情報を取得したい
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2004-07-29 13:21
初めて投稿いたします、かわさりと申します。
クライアントPCで起動するアプリケーションから、ADSIを使用して そのクライアントPCで現在ドメインにログインしているユーザの ActiveDirectoryに登録された情報(アカウント、氏名やADsPath) を取得する方法を探しています。 VC++6.0を使用していますが、VBであっても何かヒントをいただければと 思っております。 上記質問内容に関して検索したところ、ほぼ同じ質問の投稿があったのですが、 回答リンク先がFile Not Foundで参照できず解決できませんでした。 重複した質問になってしまい申し訳ありません。 ご教授のほどよろしくお願いいたします。 | ||||
|
投稿日時: 2004-07-30 11:24
かわさりです。
前記の件について調査した結果、 「現在ドメインにログインしているユーザに関する情報」を クライアントのアプリケーションで得るためには、 ADSIのIADsADSystemInfoインタフェースを使用すればよいのではないかと 思うに至りました。 早速IADsADSystemInfoを使用してプロパティを取得したところ DomainDNSNameは問題なく取得できたのですが、 他のプロパティ(ComputerNameやuserName)は取得されず プログラム自体が終了してしまいました。 エラーも出ていません。 サーバはWindows Server 2003 クライアントはWindows 2000 Professional という環境です。 前記の件およびこの原因についてご存知の方、 また私の間違いをご指摘くださる方、 ご教授のほどよろしくお願いいたします。 また、Microsoft msdn のADSIリファレンスには IADsADSystemInfoについての説明が記載されている一方、 ローカルのADSISDK onLineBookにはIADsADSystemInfoに関する記載が ありませんでした。 onLineBookではADSI2.5に関する説明が書いてあり、 現在の最新版で間違いないと思うのですか… 質問の仕方、情報の提示に不足がございましたら そちらもご指摘のほどよろしくお願いいたします。 | ||||
|
投稿日時: 2004-07-30 20:51
VB6でも同様の状況でしょうか?
Dim a As New ADSystemInfo Debug.Print a.DomainDNSName Debug.Print a.ComputerName Debug.Print a.UserName | ||||
|
投稿日時: 2004-07-31 00:05
こんばんわ.
わき道に逸れ気味な話ですのでご興味がなければ見過ごしてください. logon してる domain や user account は 環境変数からも読み取れます.あるいは computer name や logon server なども同様です. bat や command script では環境変数からそれらを読み取って,分岐処理させたりすることもあります. 既にご存知であれば読み捨ててください. | ||||
|
投稿日時: 2004-08-02 08:10
環境変数では、ADsPathが取得できないのでは?
| ||||
|
投稿日時: 2004-08-02 08:55
おはようございます.
たしかに. なので,「username や computer name くらい」なお話です. なので「ActiveDirectory を意識した内容」はご注意いただいたとおり, 取得できませんです. 失礼しました. | ||||
|
投稿日時: 2004-08-02 14:34
かわさりです。
ご返答ありがとうございます!! ななさん VBでもドメイン名は表示できるが、PC名ユーザ名は表示されないという 同じ結果でした。 ただ、VBでは 「リモートサーバ機は存在しないか利用できない」 という内容のエラー(Runtimeエラー'462')が返って来、 少し進むことができました。 これからここを調べてみます。 kazさん 環境変数からの取得はきちんと意識できていませんでした。 そちらからのアプローチも必要になりそうです。 また、エラーが出ている同じファイルをサーバ機上で実行すると、 ユーザ名まで全て表示できました。(VBでも同様です。) 引き続き、ご助言ご教授のほどお願いいたします。 | ||||
|
投稿日時: 2004-08-04 08:33
名前解決(NetBIOS名,DNS名)あたりが怪しそうですが... # 確証ありません | ||||
