启动批处理文件中的 rundll32 导致“找不到指定的模块”

启动批处理文件中的 rundll32 导致“找不到指定的模块”

我正在尝试将以下命令添加到启动时运行的批处理中:

启动 C:\WINDOWS\system32\rundll32.exe C:\WINDOWS\system32\nvspcap64.dll,ShadowPlayOnSystemStart

但出现未找到模块错误。

如果我将命令放在注册表 Windows../Run 中就可以了,也可以从命令行手动运行它,所以所有文件都在那里。

需要将其放入批处理文件中,因为 Nvidia 会定期删除 Windows../Run 条目,哈哈

我已经尝试过 cmd /c C:\WINDOWS\system32\rundll32.exe C:\WINDOWS\system32\nvspcap64.dll,ShadowPlayOnSystemStart

但不起作用。这是一个批处理文件,其中包含许多其他内容,特别是对于启动后需要长时间延迟的程序,命令在 2-3 分钟延迟后仍然不起作用。

也许一些更好的 cmd 参数可以有帮助?

答案1

事实证明,这是因为我的 quiet exec C# 程序运行了该批处理文件:

procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
procStartInfo.CreateNoWindow = true;

因此,为了避免新的批处理文件弹出黑色的 cmd 窗口,我将其放入任务计划程序中,看起来没问题。Nvidia 最好不要删除它!

相关内容