
VB2005にて、ActiveDirectoryから値を取得するアプリを作成しています。
WindowsXPでは問題なく動作するのですが、Windows7だと「ローカルエラーが発生しました」
というエラーメッセージが返って来てしまいます。
OSの設定を変えれば解決するのか、プログラムの書き方を変えるのか分からないので、
こちらに質問させていただきました。以下がプログラムです。
どなたかご存知の方がいらっしゃいましたら教えて下さい。
宜しくお願いします。
Try
Dim serverPath As String = "LDAP://ドメコンのIPアドレス/DC=XXXXX,DC=co,DC=jp"
Dim userName As String = "CN=ユーザー名,CN=Users,DC=XXXXX,DC=co,DC=jp"
Dim password As String = "パスワード"
Dim entry As New System.DirectoryServices.DirectoryEntry(serverPath, userName, password)
Dim lgUser As String
Dim intPos As Integer '「,」の位置
lgUser = ユーザーID
Dim search As New System.DirectoryServices.DirectorySearcher()
'検索のルートになるDirectoryEntryを指定
search.SearchRoot = entry
'検索条件を指定します。下ではアカウント名と変数lgUserの一致が条件
search.Filter = "(samAccountName=" + lgUser + ")"
Dim result As System.DirectoryServices.SearchResult
Dim strA As String
'↓ココでエラーになります。
result = search.FindOne
Dim counter As Integer
For counter = 0 To (result.Properties("memberOf").Count) - 1
'resultで抽出したアカウントがメンバとして含まれるグループを取得
Dim groupName As String = CStr(result.Properties("memberOf")(counter))
strA = strA & groupName & vbCrLf
intPos = groupName.IndexOf(",") '「,」の位置を取得
User_Group.Add(groupName.Substring(3, intPos - 3))
Next counter
SetUser_Group = True
Catch ex As Exception
MessageBox.Show(ex.Message, "ActiveDirectoryからの取得", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
No.1ベストアンサー
- 回答日時:
EXEを右クリック→管理者として実行
で動きませんか?
常に管理者として実行するならexeのプロパティで「管理者としてこのプログラムを実行する」
あるいはmanifestファイルを同胞
http://www.atmarkit.co.jp/fdotnet/chushin/introw …
この回答への補足
ご回答いただき有難うございます。
3つともやってみましたが結果は変わらずでした・・・。
他に何か方法をご存知でしたら教えて下さい。
何度もすみません。
Dim entry As New System.DirectoryServices.DirectoryEntry(serverPath, userName, password, DirectoryServices.AuthenticationTypes.FastBind)
と後ろにDirectoryServices.AuthenticationTypes.FastBindをつけたら上手くいきました。
ご回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Visual Studio 「AnyCpu」について
-
Windows PowerShellでC言語を実...
-
C#VB、exeに埋め込んだexeの実行
-
mscorlib.dllの初回例外について
-
VBがデバッグ時落ちてしまう
-
Designer.vbは直接コードをいじ...
-
vbaでPDFファイルが印刷されない
-
印刷要求順番と印刷出力順番が...
-
ManagementClassが見つからない。
-
exeファイルのアンインストール...
-
VBAで印刷スプール終了の判定を...
-
vba 時間の引き算 例えば 15:00...
-
クリレポのプリンタ設定について
-
VB6をWindows10にインストール...
-
フォームの最前面が効かない
-
2回以上PDFをコピーや印刷がで...
-
VB6上から印刷ダイアログを表示...
-
SOAP通信。恥を忍んで質問させ...
-
Windows10のVBAでDirectX 8が使...
-
windows2000 フックについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excel vbaから実行するexe実行...
-
Windows PowerShellでC言語を実...
-
C++初心者です。 debug asserti...
-
「読み込み違反」が起きたとき...
-
Visual Studio 「AnyCpu」について
-
JP1/File Transmission Server/...
-
(msvcr71d.dll) でハンドルされ...
-
mscorlib.dllの初回例外について
-
androidで.exeを実行できますか?
-
VB6.0 exe作成時に実行時エラー...
-
VBコンソールアプリケーション...
-
ActiveDirectoryから値を取得
-
Eclipse CDT MinGWによるC言語
-
ACCESSランタイムでエラー
-
matlabで作成したdllをVBAで使...
-
VBで「ファイル名を指定して実...
-
外部exe呼び出しの方法 ShellEx...
-
VB6 EXEとプログラムの違い
-
CreateFile が ERROR_PATH_NOT_...
-
ActiveX → VB を起動するとCre...
おすすめ情報