Windows 7 在批处理文件中高级使用msg*命令?

Windows 7 在批处理文件中高级使用msg*命令?,windows-7,popup,batch-file,cmd,Windows 7,Popup,Batch File,Cmd,编辑:在这个问题上,我已经开始悬赏50英镑给谁最好的答案 您好,我想知道是否有一种方法可以让批处理文件使用msg*“Hi”命令以及除了默认选项(取消和确定)之外的其他选项显示弹出窗口。我的意思是在弹出消息中添加自定义按钮,如“下一步”按钮,将带您到另一个弹出消息上的对话框或沿这些行的东西。总之,有没有办法编辑msg*“text goes here”命令的结果 这就是发生的事情 这正是我想要的: 然而,我也想知道是否有可能改变弹出消息的标题和大小或位置。我知道这听起来像是批处理文件中基于gui

编辑:在这个问题上,我已经开始悬赏50英镑给谁最好的答案

您好,我想知道是否有一种方法可以让批处理文件使用
msg*“Hi”
命令以及除了默认选项(取消和确定)之外的其他选项显示弹出窗口。我的意思是在弹出消息中添加自定义按钮,如“下一步”按钮,将带您到另一个弹出消息上的对话框或沿这些行的东西。总之,有没有办法编辑
msg*“text goes here”
命令的结果

这就是发生的事情

这正是我想要的:


然而,我也想知道是否有可能改变弹出消息的标题和大小或位置。我知道这听起来像是批处理文件中基于gui的弹出窗口,但我只是想知道它是否有必要(请记住,我只想使用batch/shell)。任何信息或想法都会很有帮助!谢谢

首先,我不知道可以使用
msg.exe
的其他未记录开关创建所需格式的消息。因为你问了我决定写答案的任何信息或想法

关于程序
msg.exe
如何使用
WinStationSendMessageW
WinStationEnumerateW
WinStationQueryInformationW
WinStationOpenServerW
WinStationFreeMemory
WinstationDLL
中查看。该功能已记录,所有其他功能均未记录。然而,我们可以相对确定,这些函数与中记录的函数和其他RpcWinStationXXX函数相同。我个人认为没有必要使用未记录的函数,因为其他记录的函数(参见)也可以这样做

这两个函数和都有参数
pTitle
Style
(可以是示例)和
pResponse
(您也可能感兴趣)。因此,我建议您或您所在大学的学生自己编写所需的小型实用程序。您可以在实现中使用文档和函数


如果您要询问或可能有人会向您推荐您可以使用的现有实用程序。

抱歉,无法更改批处理“msg”命令显示的弹出窗口


Oleg说,如果你想创建一个自定义弹出窗口,你不能用windows的“msg”命令。除了创建自己的“msg”命令之外,没有其他方法了,它会打开一个自定义弹出窗口(有很多方法可以做到这一点,由Oleg解释)。

msg*文本在windows 10中不起作用。不过,我制作了一个程序来提供帮助

@ECHO Off
echo -downloading paused-
echo MsgBox "are you sure you want to download 'msgBox extension' by Ronan? Oh wait ,sigh,I forgot to add the yes or no part...ok,hit ok for yes,or hit the X on the cmd terminal for no." > msg.vbs
msg.vbs
cls
del msg.vbs
echo alrighty then!
pause >nul
cls
@ECHO On
mkdir "msgBox extension"
echo start /min cache\messageB ^& exit > "msgBox extension\messageBox.bat"
echo blank..? > "msgBox extension\text.txt"
mkdir "msgBox extension\cache"
>"msgBox extension\cache\messageB.bat" (
echo set /p var=^< text.txt
echo echo MsgBox " %%var%% " ^> msgbox.vbs
echo msgbox.vbs
echo del msgbox.vbs
echo exit
)
pause
@Echo Off
cls
echo ok,good.you downloaded the software.just for good measure,do a scan of your computer,find viruses, THEN DELETE THE FOLDER ASAP. it means someone stole this program and added viruses to it.ooorrrrrrrr it's something else.
pause >nul
cls
echo now I will tell you how to use the software
echo in a batch file,or cmd prompt,: "msgBox extension\text.txt" will input text into the software. which will be used in : "msgBox extension\messageBox.bat" will display a text box of the imputed text.
echo good luck!
pause >nul
@ECHO关闭
回声下载暂停-
echo MsgBox“你确定要下载Ronan的'MsgBox extension'吗?哦,等等,叹气,我忘了添加是或否部分…好的,点击ok表示是,或者点击cmd终端上的X表示否”>msg.vbs
msg.vbs
cls
del msg.vbs
那好吧!
暂停>nul
cls
@呼应
mkdir“msgBox扩展”
echo start/min cache\messageB^&exit>“msgBox扩展名\messageBox.bat”
回音空白..?>“msgBox扩展名\text.txt”
mkdir“msgBox扩展\缓存”
>“msgBox扩展\cache\messageB.bat”(
echo set/p var=^MsgBox.vbs
echo msgbox.vbs
echo del msgbox.vbs
回波出口
)
暂停
@回音
cls
echo好的,很好。你下载了软件。为了方便起见,对你的计算机进行扫描,找到病毒,然后尽快删除文件夹。这意味着有人偷了这个程序,并在其中添加了病毒。
暂停>nul
cls
现在我将告诉你如何使用该软件
在批处理文件或cmd提示符中,echo:“msgBox extension\text.txt”将向软件中输入文本。“msgBox extension\messageBox.bat”将显示输入文本的文本框。
祝你好运!
暂停>nul

不过,要使用它,在cmd或批处理文件中,
echo text here>“msgBox extension\text.txt”
是输入,而
“msgBox extension\messageBox.bat”
将通过文本框激活它。

O对不起,你刚才说的我一句话也不懂,我很清楚有更有效的方法可以做到这一点,但我只是想知道这是否可能。。。。但我想不会。@daniel11:我的意思是,如果一个工具不能满足您的需要,那么您可以编写另一个工具,它只调用两个函数
WTSSendMessage
wtsenumeratessions
。我想你也可以用python来做这件事(例如)谢谢,这正是我的意思!(我想这是一个简单的50分)