• ベストアンサー

VB.NETでMSGBOXを使ってエラーを表示させる場合

VB.NETでMSGBOXを使ってエラーを表示させる場合 VB6で MsgBox Error, vbInformation, "処理" と書くと、システムエラーが発生した場合、メッセージを表示してくれるのですが VB.netの場合上記 Error の部分はどうかえればいいでしょうか。

  • obone
  • お礼率51% (111/215)

質問者が選んだベストアンサー

  • ベストアンサー
  • OMEGAT
  • ベストアンサー率70% (455/642)
回答No.1

詳しくはありませんが、Err.Descriptionを使う方法や、Try CatchでException.Messageを使う方法などがあると思います。 .NET流でいけばTry Catchを使うのが一般的かもしれません(C#などはこの書き方になります)。 On Error GoTo ErrMsg a = a / 0 ErrMsg: MsgBox(Err.Description) Try a = a / 0 Catch ex As Exception MsgBox(ex.Message) End Try [参考] http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard12.htm

関連するQ&A

  • MsgBox表示中のタイマーイベント

    VB6についての質問です。 MsgBox関数でメッセージBOXを表示させると、それが処理されるまで他のイベント(タイマーイベント)って発生しませんよね? 発生させようとしたら、自作のメッセージBOXを使うしかないでしょうか?

  • VB.NETでMessageBoxを表示したいのですが

    Visual Studio .NETでWebアプリケーションをしております。 言語はVB.NETです。 メッセージボックスを表示しようとすると、エラーが出てしまうのですが、 Msgboxを表示するにはどうすればいいのでしょう。 エラーメッセージは 「アプリケーションが UserInteractive モードで実行されていないときに、 モーダル ダイアログまたはフォームを表示することはできません。 サービス アプリケーションからの通知を表示するには、 ServiceNotification または DefaultDesktopOnly スタイルを指定してください。 」 といったサーバエラーです。 そこでUserInteractiveモードを調べてみると、 「このプロパティは、プロセスがサービス プロセスとして実行されている場合、または Web アプリケーション内から実行されている場合にだけ false になります。 UserInteractive が false の場合は、ユーザーが対話するための GUI が存在しないため、 モーダル ダイアログまたはメッセージ ボックスは表示しないでください。」 ということが書いてありました。 ちなみにWindowsアプリならVB.NETでもMsgbox関数で簡単に表示できたのですが。。 どこかで何か設定しなければならないのでしょうか。 お分かりの方、教えてください。 よろしくお願い申し上げます。

  • VB.NETで数秒間msgboxのようなものを出すには

    VB.NETなのですが、処理が完了した後で 2秒くらいボタンのないメッセージボックスを表示させたいのですが、 どのような方法があるでしょうか? 出来れば一番簡単な方法を教えて頂けると助かります。 よろしくおねがいします。

  • VB6.0からVB.Netへの移行時に

    現在、VB6.0からVB.netへの移行作業をしています。 VB.netでは、Sub_Mainに書かれた処理が終了すると、 アプリケーションも終了するという事がヘルプに書かれて いました。変更手順もありましたので、その通りに 表示したいフォームをスタートアップオブジェクトに指定し、フォームのLoadイベントからSub_Mainを呼び出すように変更しました。 が、エラーがでます。 「System.InvalidOperationException' のハンドルされていない例外が system.windows.forms.dll で発生しました。」 「追加情報 : 1 つのスレッド上で、2 つ目のメッセージ ループを開始できません。Application.RunDialog または Form.ShowDialog を代わりに使用してください。」 .netに触るのは初めてで、入門書と格闘してますが、 エラーの意味する事すらわかりません。 何が問題なのでしょうか? 新規にフォームを作成したものは、問題なく表示されたのですが、VB6.0から移行したものは表示すらできない情況です。

  • MsgBoxの最前面表示

    MsgBox関数を使用してエラーメッセージを表示させているのですが メッセージボックスが表示された後、フォームをクリックすると メッセージボックスがフォームの裏に隠れてしまいます。 リファレンスを見て MsgBoxSetForegroundを指定すれば表示時は最前面に表示されますが フォームをクリックするとやはり裏に隠れてしまいます。 MsgBox関数を使用してメッセージを表示する場合 常にメッセージボックスを最前面に表示させる方法はあるのでしょうか? 環境は Windows2000 + VS.NET2003(VB.NET) です。

  • visual basic 6.0のMsgBoxについて

    visual basic 6.0のMsgBoxについて MsgBoxについてなのですが、from_load内にMsgBox()でメッセージボックスを作成するとフォームを表示する前にメッセージボックスが表示されます。 これをフォームを表示してから、メッセージボックスを表示することは出来るのでしょうか? VB6は初心者で分かりづらい質問だと思いますが、ご教授をよろしくお願いします。

  • VB6.0 エラーの対応仕方

    VB6.0で実行ファイルを作ったですが、そのファイルをインストール処理すると以下のエラーメッセージがでました: ”ファイル'C:\WINDOWS\SYSTEM\msado25.tlb'の登録中にエラーが発生しました。” どうすれば、そのエラーを解決できるでしょうか?ご回答をお願いいたします。

  • VBスクリプトで「お待ち下さい」メッセージ表示は可能?

    VBスクリプトを用いて、フォルダ名の一括変更などの簡易的なソフトをつくっています。 時間がかかる処理をしている最中に、「処理中です お待ち下さい」というようなメッセージを表示させ、処理終了後に「完了しました」という終了メッセージへ切り替えて表示させることは可能なのでしょうか? MsgBox関数でできるかなと思って調べて見ましたが、できないようなので、質問させていただきました。 よろしくお願いいたします。

  • vb.netでエラー

    こんにちわ。 いまvb.netの勉強をしている者です。 初歩的な質問になるかと思いますが,教えてください。 フォーム上のリンクラベルをクリックして,あるwebページを 表示するために下記のコーディングをしました。 「System.Diagnostics.Process.Start("http://www.microsoft.com/japan/")」 実行するとこの行で, "Win32Exceptionはハンドルされませんでした" というメッセージが表示されてしまいます。 この場合何が原因と考えられるでしょうか? 教えてください。よろしくお願いします。

  • エラー時の MsgBox の出し方

    VB5 WIN2000  です。 おはようございます。初心者の質問で申し訳ありませんが、宜しくご指導頂きたいと思います。 MsgBoxの質問です。顧客管理表を作っていますが、存在しない顧客番号等を検索をした時に 《実行時エラー'3021': カレントレコードがありません》 というエラーが出ます。これを、 MsgBoxで、「データーは存在しません。」という感じで表示できるようにするには、どのようなコードを書けばいいでしょうか? ちなみに今は、データを抽出できた時に rs.MoveNext If rs.EOF Then MsgBox "(^ω^)Already at end of recordset!" rs.MoveLast Exit Do End If Loop というメッセージを出すようにしてます。 これの後に続くコードとしては、どのような感じにすれば・・? BOFとかも考えたのですが、さっぱりうまく動きません・・。 どうかご指導宜しくお願いします。

専門家に質問してみよう