VBS 替换消息框而不是放在顶部

2023-12-05

我有这个 VBS 脚本来创建消息框。

x=msgbox("The message" ,6, "Title")

但如果我运行另一个带有不同消息的脚本,它会将其放在顶部。使用以下代码从批处理文件调用 vbs:

@echo off & %temp%\message.vbs

我的问题是如何制作它,以便它替换消息而不是将其放在顶部。


VBScript 允许替换窗口中的文本,甚至可以来自不同的脚本。使用 HTA,无临时文件。

showmessage "Time is " & now

sub showmessage(text)
    ' source http://forum.script-coding.com/viewtopic.php?pid=75356#p75356
    dim shellwnd, proc, wnd
    on error resume next
    for each shellwnd in createobject("Shell.Application").windows
        set wnd = shellwnd.getproperty("messagewindow")
        if err.number = 0 then
            wnd.document.body.innerhtml = text
            exit sub
        end if
        err.clear
    next
    do
        set proc = createobject("WScript.Shell").exec("mshta ""about:<html><head><script>moveTo(-32000,-32000);</script><hta:application id=app border=dialog minimizebutton=no maximizebutton=no scroll=no showintaskbar=yes contextmenu=no selection=no innerborder=no /><object id='shellwindow' classid='clsid:8856F961-340A-11D0-A96B-00C04FD705A2'><param name=RegisterAsBrowser value=1></object><script>shellwindow.putproperty('messagewindow',document.parentWindow);</script></head></html>""")
        do
            if proc.status > 0 then exit do
            for each shellwnd in createobject("Shell.Application").windows
                set wnd = shellwnd.getproperty("messagewindow")
                if err.number = 0 then
                    with wnd
                        .document.title = "Message"
                        .document.body.style.background = "buttonface"
                        .document.body.style.fontfamily = "verdana"
                        .document.body.style.fontsize = "0.7em"
                        .document.body.innerhtml = text
                        .resizeto 300, 150
                        .moveto 200, 200
                    end with
                    exit sub
                end if
                err.clear
            next
        loop
    loop
end sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VBS 替换消息框而不是放在顶部 的相关文章

随机推荐

  • 在pygame python3中创建登录系统

    尝试让以下 python 代码工作 我想做的是 对于密码输入框 我希望出现星号 而不是出现输入的字符 我尝试过使用其他变量并显示它们 但没有成功 我已经能够获得存储在变量中的正确数量的星号 但需要帮助用星号覆盖密码框中的文本 代码是 imp
  • PHP $_SESSION 实现

    有谁知道 PHP 如何将会话 ID 映射到 SESSION 数组 换句话说 给定会话 ID x PHP 从哪里提取值来填充 SESSION 数组 给定会话 ID 及其来源的 url 是否有人能够访问 SESSION 数组中的值 默认情况下
  • 如何在不将用户发送到页面顶部的情况下触发 javascript Playsound 事件 onclick?

    我的网站页面上有以下代码 当用户单击图像时会播放声音 span span div a href a div
  • 如何在react-native中从Firestore读取子集合的文档字段

    尝试从反应本机项目中的 Firebase 的 Firestore 的根级集合内的文档中读取所有子集合 不太确定要遵循哪个文档 网络无法做到getCollections 节点 Firebase 已导入 我已成功从 firestore 检索其他
  • 使用 GO 命令时 Transact-SQL 事务回滚无法正常工作

    我有一个用 Transact SQL 编写的迁移脚本 它使用事务 以便在执行过程中出现问题时进行正确的回滚 不幸的是 当我在脚本中使用一些 GO 实用程序语句时 这种回滚行为无法按预期工作 可以使用简单的脚本重现该问题 BEGIN TRAN
  • C# 中 &= 运算符的作用是什么? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 C 中 运算符的作用是什么 例如 bool appro
  • 如何使管道与 Runtime.exec() 一起工作?

    考虑以下代码 String commandf ls etc grep release try Execute the command and wait for it to complete Process child Runtime get
  • 在 browser_action Chrome 扩展程序中设置当前选项卡的 window.location.href

    我正在尝试将当前选项卡导航到 browser action Chrome 扩展程序中的 URL 以响应用户输入的关键字 最好的方法是什么 首先 我尝试使用 javascript 编写一个简单的表单 但我意识到 javascript 没有在当
  • 如何正确地将 char * 从非托管 DLL 返回到 C#?

    函数签名 char errMessage int err 我的代码 DllImport api dll internal static extern char errMessage int err char message errMessa
  • 在facet_grid ggplot上强制x轴标签:x轴标签每行不同

    我很高兴在帖子中找到了我的问题的大部分解决方案 强制为facet grid 图的所有方面启用X 轴文本 我想创建一个看起来有点像 OP Drew Steen 的图表 除了我有两行以上的面 并且我想让每行的 x 轴标签不同 我从 baptis
  • Linux ALSA/声音 API 问题 - 如何静音?

    如何使用 C 语言静音 有ALSA函数调用吗 是否有任何其他函数调用 API 可以使麦克风静音 我已经编写了一些代码来使用 ALSA 进行音频播放 并且我注意到声音开始播放之前有延迟 如何减少声音播放的延迟或延迟 x include
  • 将字符串转换为整数

    我的代码需要帮助 我只想在文本框中写入数字 整数 并希望将其显示在列表框中 我下面的代码顺序正确吗 这似乎给出了一个错误 int yourInteger string newItem newItem textBox1 Text Trim i
  • Google 表格查询合并?

    是否有任何查询语法类似于谷歌表格中的合并 如果我有如下图所示的来源 我想要的结果是仅在状态为 true 时获取 id 和时间 但时间仅存在于一个列中检查栏 or 报告栏 所以结果会是这样的 我厌倦了这个但不起作用 QUERY A1 D4 S
  • MySQL如何让值过期?

    所以我目前正在为网站设计忘记密码功能 基本上 当用户单击 忘记密码 时 它会向他们发送一封带有重置令牌的电子邮件 我希望重置令牌在 48 小时内过期 出于安全原因 我将如何在 MySQL 和 PHP 中执行此操作 我的表中有一个名为 重置密
  • 如何将消息从子用户控件传递到父级

    这是一个 Windows 窗体 Net C 问题 我有一个无边框窗口 其透明度键和背景颜色使其完全透明 窗口内有几个用户控件 我希望能够移动窗户 我知道如何在父窗口上执行此操作 但我的问题是子控件是唯一可见的 因此也是唯一可单击的 问题是
  • 复杂类型需要主键

    我有一个对象 其中包含另一个对象类型的属性 我想将其视为复杂类型 public class Location IModule public string Id get set public Coordinate Coordinate get
  • CSS 下拉菜单

    一直在尝试获得 纯CSS 下拉菜单 几天来一直在尝试获得一个 简单 的CSS下拉导航 可以显示顶层并隐藏第二层 但无法使子项目在悬停时显示 任何帮助非常感谢示例隔离在这里 css和html粘贴到bin下面http www webdevout
  • 在 Ruby 中生成 GUID

    我有一个问题 用 GUID 很容易解决 特别是 对于密码重置工作流程 我想将 GUID 令牌发送到用户的电子邮件并让他们使用该令牌重置密码 由于 GUID 是唯一的 因此这非常安全 并且可以避免我通过电子邮件向人们发送密码 这是有风险的 我
  • 使用变量名 Josson 的表达式计算 JSON 对象

    我们需要在 java 中计算 JSON 对象表达式 我们有以下源 JSON 对象 a 100 b 200 c 300 d calc a c f g 100 h 200 i calc g h 我们需要输出这种格式 a 100 b 200 c
  • VBS 替换消息框而不是放在顶部

    我有这个 VBS 脚本来创建消息框 x msgbox The message 6 Title 但如果我运行另一个带有不同消息的脚本 它会将其放在顶部 使用以下代码从批处理文件调用 vbs echo off temp message vbs