2017-06-21 32 views
0

vb.netにWindows 10でテストしているアプリケーションがあり、エラーが発生しているようです(下の画像を参照)。このアプリはWindows 7で完璧に動作し、実際にWindows 10で問題なく動作します。問題は、アプリケーションを終了するときにエラーが発生したときです。アプリケーションで未処理のWin32例外が発生しました

私はそれをIDEから実行すると、最初はログインしてからMENUに行くログインウィンドウが表示されます。私たちの環境で実行されている場合、ユーザーはログインする必要はないので、ログインフォームは表示されず、MENUに直接進みます。

enter image description here

すべてが、これらは私が取得エラーです

Dim Answer as Integer 
    Answer = MsgBox("Are you sure you wish to Close the application ?", MsgBoxStyle.YesNo) 
    If answer = vbYes Then 
     End 
    End If 

...私はそれがすべてが乱雑取得するアプリケーションを、終了するに行くまでは、これはEXITボタンからコードで、素晴らしい作品 まず私は....私は下のウィンドウを取得し、デバッグをクリックした場合、それを完全に閉じCLOSE PROGRAMをクリックすると、このエラーが出る

enter image description here

2番目のエラーは、実際にVS2010とVS2012を持っていることを示し、デバッグできるようになります。問題は、ソースコードがTFSにあり、Windows 10マシン(Windows 7のみ)からTFSにアクセスできないということです。だから私はそれをデバッグすることはできません。しかし、これがWindows 10でのみ起こっている理由はありますか?

私は、フォームが閉じていることをsrueにするために、終了する前にMe.Close()を実行するまで行っていました。そして再び、Win 7では正常に動作しますが、10を獲得すると同じ問題が発生します。

+0

Application.Exit() 

を交換して、使用する出口()コンパイラを明示的に伝えていますあなたはその価値をチェックしていますか? "answer"は実際にメッセージボックスの戻り値を保持しています。 – soohoonigan

+0

@soohoonigan私の悪い私はいくつかのコードを変更していましたが、今修正されました – BobSki

+1

[この質問]を見てください(https://stackoverflow.com/questions/18036216/win32exception-was-unhandled-visual-basic-when- exit-button-on-the-exit-button)と答えを入力します。この問題のコメントは、なぜ "End"を使うのが問題なのかを説明するのにも役立ちます。 – soohoonigan

答えて

1

「終了」を使用してプログラムを終了すると問題が発生する可能性があります。コメントとその答えはthis SO questionに説明されています。 Application.Exit()を使用して一度ポップアップした2番目の問題は、プログラムが同じ名前の関数呼び出しを持つ複数のアセンブリを参照する単純なケースです。この場合、明示的にインポートされたMicrosoft.Office.Interop.Excelと暗黙的にインポートされたSystem.Windows.Formsの両方に "Application.Exit()"メンバがあります。明示的にExcelをインポートしているので、使用するコンテキストによってエラーが発生し、プログラムを実際に終了しないため、Exit()を使用するかどうかを強制的に判断する必要があります。それを修正するには、あなたがしなければならないすべては、変数「レスポンス」は保持し、その理由ですされて何

System.Windows.Forms.Application.Exit() 
関連する問題