V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
uiosun
V2EX  ›  程序员

浏览器的网站如何关闭电脑?或者发起关机请求? Windows10 系统

  •  
  •   uiosun · 197 天前 · 3149 次点击
    这是一个创建于 197 天前的主题,其中的信息可能已经有所发展或是发生改变。

    遇到个神奇的问题:

    我司目前依托 Win10 系统 + 浏览器的定制化机器,搞了一些业务设备,离谱的是:这个机器没有关机按钮(有强制关机的电源键)

    业务人员干脆就拔电源,导致现在有机器开始故障了——引导丢失。

    于是问我们:能不能加个关机的按钮——在网站上,用 JavaScript……

    查了一下 Google 和 StackOverflow ,没啥方便快捷的方法。

    请问神通广大的朋友们,有没有什么想法?

    29 条回复    2022-11-19 14:45:59 +08:00
    cjpjxjx
        1
    cjpjxjx  
       197 天前 via iPhone
    shutdown /s /t 0

    写成批处理放桌面上
    Eiden
        2
    Eiden  
       197 天前
    桌面写个小软件配合, 浏览器发指令, 小软件执行 shutdown -s -t 00
    singerll
        3
    singerll  
       197 天前
    谁做的定制化,把他交过了擦屁股啊。
    ic2y
        4
    ic2y  
       197 天前
    用 python 的 Flask 做个简单的 http 接口 ,执行关机操作。。

    直接用 js 调用 127.0.0.1 上暴露的这个接口
    ysc3839
        5
    ysc3839  
       197 天前
    要不然本地开个 http 服务,网页请求后关机。要不然用 WebView 套一层,然后 JavaScript 暴露关机接口。
    kokutou
        6
    kokutou  
       197 天前
    本地开服务,然后调用,只能这样吧。
    但是这服务同时也是个漏洞啊,要配各种安全措施。。。
    H97794
        7
    H97794  
       197 天前
    看 BIOS 支持按一下电源键关机不
    eason1874
        8
    eason1874  
       197 天前
    常见方法就是 python 起个 HTTP 服务,提供接口给浏览器请求,为了防呆防重放要有确认步骤
    monkey110
        9
    monkey110  
       197 天前
    http://www.airytec.com/en/switch-off/get.aspx

    在用挺好,在床上用手机浏览器关电脑 ,当然也可以用电脑浏览器关机。

    https://imgur.com/5hQhLuC
    tuwulin365
        10
    tuwulin365  
       197 天前
    电源键设置成按一下关机
    dcsuibian
        11
    dcsuibian  
       197 天前 via Android   ❤️ 1
    纯靠 JavaScript 肯定不可能,如果做得到的话就是很大的安全漏洞了。
    如果用户打开一个网页电脑就被接管了,那还得了。
    luzemin
        12
    luzemin  
       197 天前   ❤️ 5
    网站点击“关机”按钮,弹出全屏幕黑色遮罩,视觉上关机。
    ylls
        13
    ylls  
       197 天前
    @luzemin 让我想起了那个摸鱼网站 模拟电脑升级那个
    herozzm
        14
    herozzm  
       197 天前
    网页调用后台程序关机啊,看路由器后台
    程序关机,什么 python 、go 、c 、java 都能实现
    kingjpa
        15
    kingjpa  
       197 天前
    无论用啥语言,都是电脑装一个服务,暴漏 http 或 websocket ,然后浏览器里访问本地 url ,服务执行对于动作
    Osk
        16
    Osk  
       197 天前
    如上面所说的, 随便你用哪种语言实现一个 http 服务器, 然后 js 访问 localhost 来请求接口, 后端服务器收到请求执行原生关机命令.

    需要注意的是, chrome 的安全策略可能会阻止你访问 localhost, 得注意规避.
    lambdaq
        17
    lambdaq  
       196 天前
    桌面创建一个快捷方式的事情,为啥要用浏览器来做??

    桌面点右键 -> 新建 -> 快捷方式 -> 输入一楼那一串指令 -> 起名为 关机

    搞定。
    shiyuu
        18
    shiyuu  
       196 天前
    系统的电源管理选项不是可以设置,按电源时的操作吗?设置成关机就行。按一下就开机 按一下就正常关机
    montaro2017
        19
    montaro2017  
       196 天前
    淘宝搜远程开关机
    wangtian2020
        20
    wangtian2020  
       196 天前
    把网页做进 electron 中,electron 你想干嘛都行
    crazytudou
        21
    crazytudou  
       196 天前
    正常电脑电源键是开机键不也是关机键吗?按一下开机,开机状态按一下就是关机。
    做个 exe 小工具,在注册表里注册后,可以通过网址打开这个 exe 程序。搜索:网页调用本地程序,很多的
    RRyo
        22
    RRyo  
       196 天前
    简单 你添加一个协议 比如就 cuscmd:// 然后写个 shutdown 脚本打包成 exe 配置 exe 和 cuscmd 协议绑定 就可以了
    dudubaba
        23
    dudubaba  
       196 天前
    可以实现,加个关机按钮,点击时弹窗 “抱歉,关机失败,请拔电源线强制关机!”
    huangqihong
        24
    huangqihong  
       196 天前
    @Osk 如果访问 127.0.0.1 呢,应该没有安全策略吧
    pytth
        25
    pytth  
       196 天前 via iPhone
    python 执行批处理 shutdown -s -t 00
    Osk
        26
    Osk  
       195 天前
    @huangqihong 会, 需要升级到 https 才可以
    Osk
        27
    Osk  
       195 天前
    对了,楼上提到的自定义 uri 这个方法很好. 也许可以试试直接传 shutdown /s /t 0 不传 %1 了.

    参考:
    https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/aa767914(v=vs.85)?redirectedfrom=MSDN

    这里有一个完整的项目做参考:
    https://github.com/RossWang/Aria2-Integration
    laqow
        28
    laqow  
       195 天前
    反正只是浏览器系统是不是设置影子系统引导区只读挂载比较好?电源随便关都无所谓
    Lacy
        29
    Lacy  
       195 天前
    电源键单按或者双击不能关机吗
    关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2486 人在线   最高记录 5634   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 15:05 · PVG 23:05 · LAX 08:05 · JFK 11:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.