Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VBScript 未来会被移除,Windows 自启动方案讨论 #14

Open
verygoodlee opened this issue Oct 12, 2023 · 11 comments
Open

VBScript 未来会被移除,Windows 自启动方案讨论 #14

verygoodlee opened this issue Oct 12, 2023 · 11 comments

Comments

@verygoodlee
Copy link
Contributor

微软宣布弃用 VBScript 脚本语言,将在未来的 Windows 版本中移除
Windows 客户端的已弃用功能
就是不知道微软的效率,多久后被彻底移除。
这就有点难受了,如果以windows服务方式启动,运行播放器时只有进程看不到播放器窗口,因为服务是SYSTEM用户,和普通用户不在同一个会话。
很难找到vbs的替代方案,既能隐藏黑窗口,又能正常运行播放器。

@imbalaomao

This comment was marked as outdated.

@verygoodlee

This comment was marked as outdated.

@nostopp
Copy link

nostopp commented Oct 18, 2023

试了下 subprocess.Popen(["python", "embyToLocalPlayer.py"], creationflags=subprocess.CREATE_NO_WINDOW) 似乎可以挂在后台运行..

@kjtsune
Copy link
Owner

kjtsune commented Nov 6, 2023

之前把脚本输出去掉后(pythonw.exe 有输出会报错),试了用 pythonw.exe python.exe 楼上的挂后台命令 这几个配合 快捷方式 组合测试,至少都会开机闪一下窗口。

@verygoodlee
Copy link
Contributor Author

我找到一个比较轻量级的开源解决方案 SilentCMD,虽然已经好几年不维护了,
SilentCMD.exe SilentCMD.exe.config重命名为embyToLocalPlayer.exe embyToLocalPlayer.exe.config,放在embyToLocalPlayer.py同一目录下,
编辑embyToLocalPlayer.exe.config,修改这几个参数

<setting name="DefaultBatchFilePath" serializeAs="String">
      <value>python</value>
</setting>
<setting name="DefaultBatchFileArguments" serializeAs="String">
      <value>embyToLocalPlayer.py</value>
</setting>
<setting name="DefaultLogFilePath" serializeAs="String">
      <value>%temp%\embyToLocalPlayer.log</value>
</setting>

embyToLocalPlayer.exe创建一个快捷方式,丢到自启动目录

@kjtsune
Copy link
Owner

kjtsune commented Nov 7, 2023

.bat 选5复制的路径放在 SilentCMD.exe 快捷方式的目标栏后面,也可以正常运行,这样子就不用和 .py 放在一起,避免文件太杂。
但有个问题,需要 .net 3.5 环境。这个系统默认关闭的。

Repository owner deleted a comment from imbalaomao Nov 7, 2023
@verygoodlee
Copy link
Contributor Author

需要 .net 3.5 环境。这个系统默认关闭的。

Win10 22H2默认只开启了.net4.8,测试没啥问题,.net好像有做向下兼容
image

各系统预装版本可看这里 .NET Framework 版本和依赖关系
Win7有预装.net3.5SilentCMD的README文档里说了支持Win7及更高版本,没有提手动启用.net的事,应该是默认开启的

@kjtsune
Copy link
Owner

kjtsune commented Nov 7, 2023

需要 .net 3.5 环境。这个系统默认关闭的。

Win10 22H2默认只开启了.net4.8,测试没啥问题,.net好像有做向下兼容 image

各系统预装版本可看这里 .NET Framework 版本和依赖关系Win7有预装.net3.5SilentCMD的README文档里说了支持Win7及更高版本,没有提手动启用.net的事,应该是默认开启的

我用 Windows 10 LTSC 2019 会提示需要下载 .net 3.5
image

@verygoodlee
Copy link
Contributor Author

verygoodlee commented Nov 7, 2023

有更好的方案了 NriCmd,好像并不开源,兼容性堪称逆天,没啥特殊要求。

This utility can work in all versions of Windows operating system: Windows 9x/ME, Windows NT, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8, and Windows 10.

下载解压之后只要保留nircmd.exe单个文件就行,使用方法:nircmd.exe exec hide python "xxx.py"
所有命令列表:NirCmd Command Reference

@kjtsune
Copy link
Owner

kjtsune commented Nov 13, 2023

有更好的方案了 NriCmd,好像并不开源,兼容性堪称逆天,没啥特殊要求。

This utility can work in all versions of Windows operating system: Windows 9x/ME, Windows NT, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8, and Windows 10.

下载解压之后只要保留nircmd.exe单个文件就行,使用方法:nircmd.exe exec hide python "xxx.py"。 所有命令列表:NirCmd Command Reference

作为默认组件还是不很合适,相比更倾向于 ahk,对喜欢开源的用户更友好可控。

@kjtsune
Copy link
Owner

kjtsune commented Oct 23, 2024

AutoHotkey 自启动解决方案:

  • 下载 etlp_ahk.zip 解压到 embyToLocalPlayer.py 所在目录。
  • 运行 embyToLocalPlayer.exe 来代替使用 _debug.bat
  • 或者 自行安装 ahk v2 ,然后运行 embyToLocalPlayer.ahk 来代替使用 _debug.bat

Repository owner deleted a comment from ke-xi Oct 23, 2024
@kjtsune kjtsune changed the title VBScript即将被移除,windows版可能要考虑其他自启动方案了 VBScript 未来会被移除,Windows 自启动方案讨论 Oct 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants