User Tools

Site Tools


displaying_20program_20errors_20in_20a_20message_20box

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

displaying_20program_20errors_20in_20a_20message_20box [2018/03/31 13:19]
127.0.0.1 external edit
displaying_20program_20errors_20in_20a_20message_20box [2018/04/17 15:49] (current)
tbest3112 Added syntax highlighting
Line 2: Line 2:
  
 //by Jon Ripley, July 2006//\\ \\  To display a program error in a message box use code similar to the following:​\\ ​ //by Jon Ripley, July 2006//\\ \\  To display a program error in a message box use code similar to the following:​\\ ​
 +<code bb4w>
         ON ERROR SYS "​MessageBox",​ @hwnd%, REPORT$ + " at line " + STR$ERL, "​Error",​ 48:QUIT         ON ERROR SYS "​MessageBox",​ @hwnd%, REPORT$ + " at line " + STR$ERL, "​Error",​ 48:QUIT
 +</​code>​
 \\  If you replace ""​Error""​ by zero the result will be the same, except on non-English versions of Windows when the appropriate foreign language equivalent of **Error** will be used:\\ \\  \\  If you replace ""​Error""​ by zero the result will be the same, except on non-English versions of Windows when the appropriate foreign language equivalent of **Error** will be used:\\ \\ 
 +<code bb4w>
         ON ERROR SYS "​MessageBox",​ @hwnd%, REPORT$ + " at line " + STR$ERL, 0, 48:QUIT         ON ERROR SYS "​MessageBox",​ @hwnd%, REPORT$ + " at line " + STR$ERL, 0, 48:QUIT
 +</​code>​
 \\  For more complex error reporting or if you have a dedicated error handler you can place the above code in a procedure. To do this use code similar to the following at the start of your program:​\\ ​ \\  For more complex error reporting or if you have a dedicated error handler you can place the above code in a procedure. To do this use code similar to the following at the start of your program:​\\ ​
 +<code bb4w>
         ON ERROR PROC_reporterror:​QUIT         ON ERROR PROC_reporterror:​QUIT
 +</​code>​
 Here we call **PROC_reporterror** and terminate the program.\\ \\  For unreleased programs use code similar to the following:​\\ ​ Here we call **PROC_reporterror** and terminate the program.\\ \\  For unreleased programs use code similar to the following:​\\ ​
 +<code bb4w>
         DEF PROC_reporterror         DEF PROC_reporterror
         SYS "​MessageBox",​ @hwnd%, REPORT$ + " at line " + STR$ERL, 0, 48         SYS "​MessageBox",​ @hwnd%, REPORT$ + " at line " + STR$ERL, 0, 48
         ENDPROC         ENDPROC
 +</​code>​
 \\  For released programs, it is often wise to give users more information with error reports. Asking the user to contact you with sufficient information for you to correct the error is a good idea.\\ \\  To do this use code similar to the following:​\\ ​ \\  For released programs, it is often wise to give users more information with error reports. Asking the user to contact you with sufficient information for you to correct the error is a good idea.\\ \\  To do this use code similar to the following:​\\ ​
 +<code bb4w>
         DEF PROC_reporterror         DEF PROC_reporterror
         LOCAL msg$, @%         LOCAL msg$, @%
Line 21: Line 30:
         \ "An error has occurred",​ 48         \ "An error has occurred",​ 48
         ENDPROC         ENDPROC
 +</​code>​
 Change the text of the error report to suit your needs; for instance, you might want to include a contact email address. Change the text of the error report to suit your needs; for instance, you might want to include a contact email address.
displaying_20program_20errors_20in_20a_20message_20box.txt ยท Last modified: 2018/04/17 15:49 by tbest3112