アプリ版:「スタンプのみでお礼する」機能のリリースについて

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

A 回答 (1件)

EXEを右クリック→管理者として実行


で動きませんか?

常に管理者として実行するならexeのプロパティで「管理者としてこのプログラムを実行する」

あるいはmanifestファイルを同胞
http://www.atmarkit.co.jp/fdotnet/chushin/introw …

この回答への補足

ご回答いただき有難うございます。

3つともやってみましたが結果は変わらずでした・・・。
他に何か方法をご存知でしたら教えて下さい。
何度もすみません。

補足日時:2012/06/19 19:16
    • good
    • 1
この回答へのお礼

Dim entry As New System.DirectoryServices.DirectoryEntry(serverPath, userName, password, DirectoryServices.AuthenticationTypes.FastBind)

と後ろにDirectoryServices.AuthenticationTypes.FastBindをつけたら上手くいきました。

ご回答ありがとうございました。

お礼日時:2012/07/24 10:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています