如何使 vbscript 弹出消息始终在最前面?

How to make vbscript popup message always-on-top?

有人知道如何在所有内容之上而不是在后台制作 vbscript popup-message/box "spawn"...吗?

这是我的脚本::)

Set objShell = WScript.CreateObject("WScript.Shell")
Const wshYes = 6 
Const wshNo = 7 
Const wshYesNoDialog = 4 
Const wshQuestionMark = 32 
intReturn = objShell.Popup("Vil du annulere shutdown?", _
    20, "Shutdown om 5 minutter!", wshYesNoDialog + wshQuestionMark) 
If intReturn = wshYes Then 
    Wscript.Echo "Shutdown annuleret." 
    objShell.Run "C:\ProgramData\AutoShutdown\Annuler.bat" 
End If 

非常不擅长vbscript,我只是使用这个小部分我的批处理程序。任何帮助表示赞赏!

API 消息框函数的包装器。只是传递数字。大多数 msgbox 函数只是传递数字,所以他们不需要理解它们。

所以使用 &h1000、&h2000 或 &h40000

/*
 * MessageBox() Flags
 */
#define MB_OK                       0x00000000L
#define MB_OKCANCEL                 0x00000001L
#define MB_ABORTRETRYIGNORE         0x00000002L
#define MB_YESNOCANCEL              0x00000003L
#define MB_YESNO                    0x00000004L
#define MB_RETRYCANCEL              0x00000005L
#if(WINVER >= 0x0500)
#define MB_CANCELTRYCONTINUE        0x00000006L
#endif /* WINVER >= 0x0500 */


#define MB_ICONHAND                 0x00000010L
#define MB_ICONQUESTION             0x00000020L
#define MB_ICONEXCLAMATION          0x00000030L
#define MB_ICONASTERISK             0x00000040L

#if(WINVER >= 0x0400)
#define MB_USERICON                 0x00000080L
#define MB_ICONWARNING              MB_ICONEXCLAMATION
#define MB_ICONERROR                MB_ICONHAND
#endif /* WINVER >= 0x0400 */

#define MB_ICONINFORMATION          MB_ICONASTERISK
#define MB_ICONSTOP                 MB_ICONHAND

#define MB_DEFBUTTON1               0x00000000L
#define MB_DEFBUTTON2               0x00000100L
#define MB_DEFBUTTON3               0x00000200L
#if(WINVER >= 0x0400)
#define MB_DEFBUTTON4               0x00000300L
#endif /* WINVER >= 0x0400 */

#define MB_APPLMODAL                0x00000000L
#define MB_SYSTEMMODAL              0x00001000L
#define MB_TASKMODAL                0x00002000L
#if(WINVER >= 0x0400)
#define MB_HELP                     0x00004000L // Help Button
#endif /* WINVER >= 0x0400 */

#define MB_NOFOCUS                  0x00008000L
#define MB_SETFOREGROUND            0x00010000L
#define MB_DEFAULT_DESKTOP_ONLY     0x00020000L

#if(WINVER >= 0x0400)
#define MB_TOPMOST                  0x00040000L
#define MB_RIGHT                    0x00080000L
#define MB_RTLREADING               0x00100000L


#endif /* WINVER >= 0x0400 */

#ifdef _WIN32_WINNT
#if (_WIN32_WINNT >= 0x0400)
#define MB_SERVICE_NOTIFICATION          0x00200000L
#else
#define MB_SERVICE_NOTIFICATION          0x00040000L
#endif
#define MB_SERVICE_NOTIFICATION_NT3X     0x00040000L
#endif

#define MB_TYPEMASK                 0x0000000FL
#define MB_ICONMASK                 0x000000F0L
#define MB_DEFMASK                  0x00000F00L
#define MB_MODEMASK                 0x00003000L
#define MB_MISCMASK                 0x0000C000L

只需添加 vbSystemModal

    120, "Shutdown om 5 minutter!", wshYesNoDialog + vbSystemModal + wshQuestionMark)

+ 4096 添加到您的代码中也可以工作

20, "Shutdown om 5 minutter!", wshYesNoDialog + wshQuestionMark + 4096)


这里 google 在 link 中搜索 objShell.Popup modal 4096