Sign in to follow this  
Followers 0
Docfxit

MsgBox isn't displaying correctly

10 posts in this topic

I have a MsgBox that isn't displaying what I asked for.  Could someone please try to figure out what I am doing wrong?

#include <Array.au3>
#include <WinAPI.au3>
#include <WinAPIDiag.au3>
#include <WinAPIConstants.au3>
#include <GUIConstantsEx.au3>
#include <Windows Firewall.au3>

_RunCommonCode()

$sTitle = "ScanFiles"
While $TryThisAgin = 0
    $TryThisAgin = 1
    DriveMapGet("L:")
    If @error = 1 Then
        If Not @Compiled Then MsgBox(262144, 'TestBox', "After DriveMapGet " & "@error = " & @error & @CRLF & "Line Called From = " & $LineCalledFrom = @ScriptLineNumber)
    EndIf
WEnd


Func _RunCommonCode()
    Global $iError = 0, $iExtended = 0, $TryThisOnce = 0, $TryThisAgin = 0, $ProgramFiles = ""
    Global $tText = DllStructCreate("char Text[4096]")
    Global $pText = DllStructGetPtr($tText), $sMessage = "<None>"
    Global $LineCalledFrom = @ScriptLineNumber
    AutoItSetOption("TrayIconDebug", 1) ;0-off
    ; Set so that tray displays current line number
    If @OSVersion = 'Win_7' Then
        $ProgramFiles = "C:\Programs\"
    Else
        $ProgramFiles = "C:\Program Files\"
    EndIf

    ;AutoIt_Debugger_Command:Enable_Debug
EndFunc   ;==>_RunCommonCode

This is what the Msgbox looks like:

MsgBox.jpg

Thank you,

Docfxit

Share this post


Link to post
Share on other sites



"After DriveMapGet " & "@error = " & @error & @CRLF & "Line Called From = " & $LineCalledFrom = @ScriptLineNumber

is being interpreted as an expression because of the "=".

Try:

If Not @Compiled Then MsgBox(262144, 'TestBox', "After DriveMapGet " & "@error = " & @error & @CRLF & "Line Called From = " & @ScriptLineNumber)

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Docfxit,

You need to put quotes around the final "=" - at the moment you are displaying the result of an expression: ;)

If Not @Compiled Then MsgBox(262144, 'TestBox', "After DriveMapGet " & "@error = " & @error & @CRLF & "Line Called From = " & $LineCalledFrom & "=" & @ScriptLineNumber)
M23

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

what are all the flags in 262144 ? It may hold key to the problem.

Edited by Rockerfeller

Share this post


Link to post
Share on other sites

According to the help file:

$MB_TOPMOST     262144  MsgBox() has top-most attribute set

Your question is one of the reasons why Guinness inists on using the constant names and not the numeric ("magic") numbers.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Docfxit,

You need to put quotes around the final "=" - at the moment you are displaying the result of an expression: ;)

If Not @Compiled Then MsgBox(262144, 'TestBox', "After DriveMapGet " & "@error = " & @error & @CRLF & "Line Called From = " & $LineCalledFrom & "=" & @ScriptLineNumber)
M23

 

 

Thanks for the reply...

This didn't work.

See above post that did work.

Thanks,

Docfxit

Share this post


Link to post
Share on other sites

A tip for the future:

"Doesn't work" doesn't help very much :)

Please describe what you get and what you expected. The screenshot in the OP was a good try :)


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

According to the help file:

$MB_TOPMOST     262144  MsgBox() has top-most attribute set

Your question is one of the reasons why Guinness inists on using the constant names and not the numeric ("magic") numbers.

Does he insist because the number is not obvious?

What is Top-most?

I have often wondered what the different MsgBox flags do.  I was thinking of writing a script with different examples to remind me what they do.  Do you know of a script that would do that?

Thanks,

Docfxit 

Share this post


Link to post
Share on other sites

A tip for the future:

"Doesn't work" doesn't help very much :)

Please describe what you get and what you expected. The screenshot in the OP was a good try :)

 

I didn't know how else to describe it in the title.  In the body I could have given an example of what I expected but I thought it was pretty obvious.

Thanks for the comment.

Docfxit

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0