ServicedComponent を継承する C# で COM+ コンポーネントを開発しました。これがどのように見えるかです:
[Transaction(TransactionOption.Required)]
[ClassInterface(ClassInterfaceType.AutoDual)]
[EventTrackingEnabledAttribute(true)]
[JustInTimeActivation]
[ObjectPooling(Enabled = true, MinPoolSize = 10, MaxPoolSize = 30, CreationTimeout = 15000)]
[Synchronization]
class MyComponent: System.EnterpriseServices.ServicedComponent
{
[AutoComplete(true)]
public string getHello()
{//2nd breakpoint
ContextUtil.SetComplete();
return "HelloWorld";
}
}
このコンポーネントを呼び出す別のテスト プロジェクトがあります。
class Program
{
static void Main(string[] args)
{
MyComponent myComp = new MyComponent();
myComp.getHello();//1st Breakpoint
}
}
2 番目のブレークポイントに到達できません。これは、VS 2012 に切り替える前に機能していました。奇妙なことに、2012 に切り替えた後、VS 2010 でも機能しなくなりました。
すでに試しましたが、
- プロセスにアタッチ
- デバッグ設定で「マイコードのみを有効にする」のチェックを外した
誰かここから方向を教えてもらえますか?
更新 1
Mike から提供されたリンクから、DLL と PDB ファイルが存在する同じフォルダーで DLL の symchk を試しました。PDB が一致しないか見つからないというエラーで失敗します。このエラーを解決する方法がわかりません。