【问题标题】:How do you make a simple batch file that will open multiple programs and uwp apps如何制作一个可以打开多个程序和 uwp 应用程序的简单批处理文件
【发布时间】:2018-07-15 16:02:28
【问题描述】:

首先,我不是编码员或开发人员,对于从现在开始的任何无知,我深表歉意。

我正在尝试制作一个可以打开多个程序和 uwp 应用程序的简单批处理文件。例如,在工作日开始时,我需要启动和运行几个程序和应用程序,例如 edge、skype、outlook16、onenote(uwp 应用程序不是程序)等。

我可以获得使用 .exe 执行此操作的普通 Windows 程序,但我很难找到如何使用 Windows UWP 执行相同操作。

任何帮助将不胜感激。

【问题讨论】:

标签: batch-file uwp


【解决方案1】:

使用 UWP 应用程序有点棘手,但你绝对可以做到。

将您想要快捷方式的 UWP 应用的动态磁贴放在开始菜单中。然后将磁贴本身拖放到桌面上。这将创建该应用程序的快捷方式。现在您可以通过批处理文件手动启动快捷方式,或者更轻松 - 将创建的快捷方式复制到 Startup 文件夹中:

C:\Users\{username}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

您可以通过点击 Windows + R 并输入 shell:startup 来更快地打开此文件夹。

启动应用程序的其他选项是使用它们关联的 URI 协议。 OneNote 有onenote-cmd:onenote:,Edge 有microsoft-edge:(或者,如果它是您的默认浏览器,您可以使用任何网站 URL)。还有更多的 URI 方案,例如here 提供了一个简短列表。

【讨论】:

  • Martin Zikmund 是对的,举个简单的例子,你可以在你的批处理文件中试试这个: start onenote-cmd: 这将打开 onenote uwp 应用程序
【解决方案2】:

我不知道 UWP,但这些可能是。 我写了这个答案,因为它在我的搜索中很高,而且我发现的大多数答案都很少有例子。 这为在任务栏中(在后台)运行的程序提供了更多想法。

这是我桌面上的“Work Start.bat”批处理文件:

rem   Work Start Batch Job from Desktop
rem   Launchs All Work Apps
@echo off
rem start "Start VS Code" "C:\Users\yourname\AppData\Local\Programs\Microsoft VS Code\code.exe"
start "Start OneDrive" "C:\Users\yourname\AppData\Local\Microsoft\OneDrive\OneDrive.exe"
start  "Start Google Sync" "C:\Program Files\Google\Drive\GoogleDriveSync.exe"
start "Start Clipboard" "C:\Program Files\Beyond Compare 4\BCClipboard.exe"
start "Start Cisco AnyConnect" "C:\Program Files (x86)\Cisco\Cisco AnyConnect Secure Mobility Client\vpnui.exe"
start outlook
start chrome
start firefox
start skype
start "Start Teams" "C:\Users\yourname\AppData\Local\Microsoft\Teams\current\Teams.exe" /MIN
start Slack
start Zoom
sleep 10
taskkill /IM "explorer.exe"
taskkill /IM "teams.exe"
taskkill /IM "skype.exe"
taskkill /IM "slack.exe"
taskkill /IM "zoom.exe"
taskkill /IM "cmd.exe"
@echo on

某些应用程序不会以简单的“启动应用程序” 命令启动,因此我使用了完整路径。 出于某种原因,有些是在我的用户 appdata 文件夹中而不是在程序文件中找到的,我不理解程序存储的这种行为,这是没有意义的。

我使用了 时间延迟,以便在我使用 taskkill 命令将应用程序发送到后台之前,应用程序可以完全启动 我杀了 explorer.exe 因为 OneDrive 打开了资源管理器 我杀死了 cmd.exe,因为它由于应用程序行为不良而打开并保持打开状态。 其余的我杀了,这样他们就可以移动到后台。

这是我的“Work End.bat”批处理文件,用于强制关闭所有内容:

rem   Work End Batch Job from Desktop
rem   Forcibly Closes All Work Apps
@echo off
taskkill /f /IM outlook.exe
taskkill /f /IM OneDrive.exe
taskkill /f /IM GoogleDriveSync.exe
taskkill /f /IM BCClipboard.exe
taskkill /f /IM "vpnui.exe"
taskkill /f /IM "chrome.exe"
taskkill /f /IM "firefox.exe"
taskkill /IM "explorer.exe"
taskkill /f /IM "teams.exe"
taskkill /f /IM "skype.exe"
taskkill /f /IM "slack.exe"
taskkill /f /IM "zoom.exe"
@echo on

我必须确保我已保存所有工作,并且文件不再同步。 可能我需要一个批处理文件来杀死除文件同步之外的所有内容。 强行杀死 Chrome 和 firefox 的好处是他们要求在下一次启动时恢复,所以我可以从中断的地方继续,假设我保存了所有内容。 如果我不强行杀死它们,它们会留在后台,如果我使用十字架关闭它们,它们不会让我从我离开的地方开始。

然后我可以在另一个批处理文件中启动我的游戏文件,但这与第一个文件类似。

现在我可以关闭默认的“启动”应用程序并使用这个“Work Start.bat”,因为当我启动我的电脑进行游戏时,启动应用程序让我很烦。

【讨论】:

    猜你喜欢
    • 2016-10-15
    • 1970-01-01
    • 2019-01-01
    • 2018-10-13
    • 1970-01-01
    • 2019-03-31
    • 1970-01-01
    • 2012-02-27
    • 1970-01-01
    相关资源
    最近更新 更多