2011-12-26 3 views
0

Active Directory Object Picker from Codeplexを使用して、ユーザー&グループのダイアログボックスを開こうとしています。ビルド後のCodeplex ADUIオブジェクトピッカーに関する問題

VS2010のデバッグモード中に実行すると効果的ですが、ソリューションのリリースを実行すると、ダイアログボックスを2〜3回開いた後に開きますが、ボタンのどれもクリックに反応しません彼らは押されていますが何も活性化しません)。全く何もない。それは詰まっていない。いずれのボタンのクリックにも反応しない。それを閉じるための唯一の方法は、タスクマネージャからプロセスを終了させることです。

私はC#VS2010を使用してWin7 x64マシンでソリューションを作成して実行しました。 ビルドは任意のCPUです。

DirectoryObjectPickerDialog picker = new DirectoryObjectPickerDialog(); 
picker.AllowedObjectTypes = ObjectTypes.Computers; 
picker.DefaultObjectTypes = ObjectTypes.Computers; 
picker.AllowedLocations = Locations.GlobalCatalog; 
picker.DefaultLocations = Locations.GlobalCatalog; 
picker.MultiSelect = true; 
DialogResult dialogResult = picker.ShowDialog(); 
if (dialogResult == DialogResult.OK) 
{ 
    DirectoryObject[] results; 
    results = picker.SelectedObjects; 
    if (results == null) 
     return; 

    for (int i = 0; i <= results.Length - 1; i++) 
    { 
     ListViewItem theItem = new ListViewItem(results[i].Name); 
     LvServersNames.Items.Add(theItem); 
    } 

    LblTotalServers.Text = "Server(s) : " + results.Length.ToString(); 
} 

picker.Dispose(); 
picker = null; 
+0

使用しているコードサンプルがありますか? – MethodMan

+0

http://update.eprocsolutions.com/rc30.rar - このファイルはこのコードに基づくプロジェクトです。デバッグ中に実行する際には問題はありませんが、リリースとしては時々止まることがあります。このコードを大きなプロジェクトで使用すると、リリースを実行するときにスタックされます。 – Oren

+0

あなたはどんなコードを持っていますか?.rarまたは.zipファイルのダウンロードを推奨しません。ファイルの安全性を保証しません。どのコードを試してみましたか? – MethodMan

答えて

0

Codeplexのディスカッションセクションをご覧ください。 x64上でコードを実行することについての質問がありますが、基本的に指示に従っていくつかのハックを行う必要がありますが、問題なく動作します。参照:

http://adui.codeplex.com/discussions/38047?ProjectName=adui

しかし警告の言葉 - あなたが選択したオブジェクトのSIDを返す必要があれば、私はあきらめる前にダイアログを得たとして、あなたはおそらく、その後限り取得します。特定のオペレーティングシステムでは、インターフェイスの1つのバグは、拡張属性(SIDを取得するために必要なもの)を指定すると、データを.NETにマーシャリングすることが不可能であることを意味します。 http://msdn.microsoft.com/en-us/library/windows/desktop/ms676013(v=vs.85).aspx

関連する問題