0

この問題を説明する方法がよくわかりません。かなり漠然としています。私のアプリケーションを使用している 2 つのクライアントから、アプリケーションがまったく開かないという報告がありました。他のクライアントでは問題なく動作しています。

私は彼らのコンピューターにアクセスできないため、この問題を自分で処理するのは困難です。

クライアントの 1 人と連絡を取り、問題を解決するための多くの試行錯誤の提案をしました。彼は正しい .Net Framework (4.0) をインストールしています。メイン フォームにコードがないバージョンのアプリケーションを彼に送ったところ、彼はそれを実行することができ、フォーム クラスが開始されたときに問題が発生し始めました。

Imports System.IO
Imports Microsoft.Win32
Imports System.Text.RegularExpressions
Public Class frmMain
    ...
End Class

クラスは、コードが削除されていても、問題を引き起こします。すべてのコードをそのままにしておくと、クライアントはプログラムを実行してもまったく応答がありません (タスク マネージャーには表示されません)。しかし、クラスからコードを削除すると、クライアントは「アプリケーションが動作を停止しました」というメッセージを受け取ります。エラーですが、詳細は提供されていません。

このような奇妙な問題の原因は何ですか?

Googleで検索した場所から提案されたように、x86から​​「任意のCPU」に変更しようとしましたが、効果はありませんでした。フォーム クラスの初期化にエラー処理を追加する方法がわからないので、これからエラー情報を取得する方法がわかりません。

4

2 に答える 2

1

アプリケーション ドメインで未処理の例外が発生すると、しばしば役に立たない「アプリケーションが動作を停止しました」というメッセージが表示されます。

Sub Main組み込みの Startup Object プロジェクト プロパティを使用するのではなく、独自のメソッドがあると仮定します。Mainメソッドでイベント ハンドラをアタッチし、ディスクのどこかに例外レポートを書き込みますAppDomain.CurrentDomain.HnhandledException( recurse を忘れないでくださいex.InnerException)。これを使用して問題を分析できます。

于 2013-07-02T00:52:07.123 に答える
0

Windows ログにそのアプリケーションに関連する例外があるかどうかを確認しましたか? クライアントのマシンに、アプリケーションが正常に開くのを妨げる何かがあるかもしれません。見つけたログをここに投稿してください。

于 2013-07-02T00:50:13.253 に答える