私は奇妙な問題に直面しています。私は複数のカルチャをサポートする小さなFormベースのGUIアプリケーションを持っています。フォームベースのアプリケーションの2番目のインスタンスにUIが表示されない
このアプリケーションをターゲットシステムで実行すると、アプリケーションの2番目のインスタンスにGUIが表示されません。
BUT =>私はMessageBox.Show("")
を追加してからshowDialog()
を呼び出す前に、毎回うまく動作します。
MessageBox.Show()
が何をしているのかわかりません。
また、アプリケーションはビルドシステムで正常に動作しています。
追加情報:
私は `System.ComponentModel.ComponentResourceManagerコメント場合は、物事が正常に動作します。
私は2番目のインスタンスが動作していますが、私が追加したログは表示されないので、Mainを入力していないことがわかります。
サンプルコード:ここで
class MyForm : Form
{
private Button buttonCancel;
private Button buttonOK;
private void InitializeComponent()
{
}
public static void Main()
{
var ui = new MyForm();
var formResult=ui.ShowDialog();
if (formResult == DialogResult.OK) ;
{
// Do something
}
}
}
がスタックトレースです(私はこれを理解するには十分だ:)
0:000> kb
ChildEBP RetAddr Args to Child
0012d4d0 7c90df4a 7c809590 00000002 0012d4fc ntdll!KiFastSystemCallRet
0012d4d4 7c809590 00000002 0012d4fc 00000001 ntdll!ZwWaitForMultipleObjects+0xc
0012d570 7e4195f9 00000002 0012d598 00000000 kernel32!WaitForMultipleObjectsEx+0x12c
0012d5cc 7752e73e 00000001 0020d1b0 ffffffff user32!RealMsgWaitForMultipleObjectsEx+0x13e
0012d5f4 77557297 0020d1b0 ffffffff 0012d620 ole32!CCliModalLoop::BlockFn+0x80
0012d668 79f1a2fd 00000002 ffffffff 00000001 ole32!CoWaitForMultipleHandles+0xcf
0012d688 79f1a264 00000000 ffffffff 00000001 mscorwks!NT5WaitRoutine+0x51
0012d6f4 79f1a1c8 00000001 0020d1b0 00000000 mscorwks!MsgWaitHelper+0xa5
0012d714 79fcccd0 00000001 0020d1b0 00000000 mscorwks!Thread::DoAppropriateAptStateWait+0x28
0012d798 79fccd65 00000001 0020d1b0 00000000 mscorwks!Thread::DoAppropriateWaitWorker+0x13c
0012d7e8 79fccee9 00000001 0020d1b0 00000000 mscorwks!Thread::DoAppropriateWait+0x40
0012d844 79e7549a ffffffff 00000001 00000000 mscorwks!CLREvent::WaitEx+0xf7
0012d858 79fd774d ffffffff 00000001 00000000 mscorwks!CLREvent::Wait+0x17
0012d8e4 79f016f0 001593a0 ffffffff 001593a0 mscorwks!AwareLock::EnterEpilog+0x8c
0012d900 79f01674 4ea81039 0012d9c0 001593a0 mscorwks!AwareLock::Enter+0x61
0012d9a0 00ce3a15 013a44f4 00000000 00000000 mscorwks!JIT_MonEnterWorker_Portable+0xb3
WARNING: Frame IP not in any known module. Following frames may be wrong.
0012d9f0 79e80838 00361efe 0012da24 4e8438a1 0xce3a15
0012da2c 79e71b4c 001f4778 00231290 0012dabc mscorwks!PreStubWorker+0x141
0012da3c 79e8968e 00000000 00000000 0012dbec mscorwks!CallDescrWorker+0x33
0012dabc 79e89e8b 00000000 00000000 0012dbec mscorwks!CallDescrWorkerWithHandler+0xa3
アプリケーションの2番目のインスタンスをどのように起動しますか? –
もう一度クリックするだけです。 – Satbir
'ShowDialog'呼び出しはどのように適用されますか?いくつかのコードを投稿できますか? –