在 Windows 上哪里可以安装没有安装程序的小程序?

在 Windows 上哪里可以安装没有安装程序的小程序?

C:\Program Files在 Windows 平台上,大多数大型应用程序都带有自己的安装程序,它会在 下、可能还有其他位置设置文件夹,并可能添加一些注册表项等。

但是仍然有相当多的工具只包含一个.exe,或者可能包含一个README和一.dll两个。

我该如何安装这些工具?直接在C:\Program Files?全部位于C:\Program Files?某个子文件夹下C:\Users\Me?某个完全不同的地方?

或者也许对仅有一个的工具和.exe那些也有其他文件的工具采取不同的方法,或者也许只有带有 s 的工具.dll需要区别对待......

是否有任何标准可接受的方法来执行此操作?“最佳实践”?如果答案取决于 Windows 版本,则我使用的是 Windows 7。

特别是,那些看起来显而易见的答案似乎有一个陷阱:

我曾尝试在 下手动创建新的子文件夹C:\Program Files。事实上,我认为我以前也这样做过,但 Windows 弹出了一个对话框目标文件夹访问被拒绝。这让我三思而后行,而不是盲目点击继续

目标文件夹访问被拒绝

假设多年来比我更伟大的人已经多次遇到过这种情况,我想问社区是否已经接受了某种“最佳实践”。

答案1

使用C:\Tools

或者C:\Users\<user>\Tools
 

我正在使用许多没有安装程序的小程序,我推荐以下程序:

  • 将它们全部保存到C:\Tools
  • 如果程序由单个文件组成,则将其直接放在C:\Tools
  • 如果程序由多个文件组成,则将其放在C:\Tools\ProgramName
  • SysInternals 工具有一个特殊类别,C:\Tools\_SysInternals因为它们有很多

C:\Tools在迁移时只是从一台机器移动到另一台机器,效果非常好。

实际样本(缩短列表):

C:\Tools\autoexec-elevated.bat
C:\工具\清理.bat
C:\Tools\BabelMap.exe
C:\工具\netmon.exe
执行程序
C:\工具\putty.exe
C:\工具\UDPixel.exe
C:\工具\电池.vbs

C:\工具\3dclip-1.5.1\
C:\工具\alternatestreamview\
C:\工具\blender-2.71-windows64\
C:\工具\Notepad++\
C:\工具\QueryExpress\
C:\工具\winscp555\
C:\工具\Xinorbis\

C:\Tools\_Sysinternals\accesschk\
C:\Tools\_Sysinternals\Autoruns\
C:\Tools\_Sysinternals\depends22_x64\
C:\Tools\_Sysinternals\depends22_x86\
C:\Tools\_Sysinternals\LogonSessions\

我希望这能给你一个想法。

编辑:扩展信息

我认为安装在你的问题中我应该如何安装这些工具?你实际上是指手动设置,比如复制文件。

经验法则:使用手动创建的文件夹来存放手动维护的文件。让系统文件夹供您不直接控制的(安装)过程使用。 您将立即获得识别哪些内容是“您的”(并且您可以自由复制它)以及哪些应用程序由安装程序管理的好处。

因此,手动安装(通过复制)时,请远离

  • C:\Program Files- 此处发现的程序无法简单迁移,必须重新安装(为迁移提供了很好的提示)
  • C:\Program Files (x86)- 与上述相同,但在 64 位系统上,32 位程序放在此处(可以给出提示来确定特定应用程序是 32 位还是 64 位)
  • C:\ProgramData- 此处找到的应用程序存储表明这些程序以自己的方式维护部分数据。但您询问了将您的程式这不是个好主意。
  • C:\Users\Steven\AppData- 再次,投入程式在数据下不是一个好主意。如果你问的是数据,那么关于这条路径可以写出一些有趣的东西。但对于程序来说,答案是“不”。:)

可能的路径

  • C:\Users\Steven- 可你的替代根如果这是一台共享计算机,并且您希望保持整洁,因此您决定不创建任何全局目录。您可以考虑C:\Users\Steven\Tools为您的程序,或者C:\Users\Steven\Desktop\Tools即使您想使用舒适的桌面可以通过快捷方式从 Windows 中的许多位置访问文件夹。但前者可能更好,您仍然可以将此文件夹的快捷方式放在桌面或任何需要的地方。

编辑:额外的有用提示:

如果你想让你的一些小程序在 Windows 10 中被识别开始菜单(用于逐步搜索其名称或使用Ctrl+ Shift+立即提升开始Enter),在那里添加快捷方式并启动一次(然后您就可以移除它们了。)

答案2

据我所知,没有通用的方法。

将您的应用程序放入C:\Program Files是一种相当标准的方式。您将获得访问保护:普通用户(非特权用户)无法写入C:\Program Files。因此,您无法意外删除或覆盖此类文件;而且它们可以更好地抵御病毒。这就是为什么当您尝试在 中创建文件夹时会收到警告 — 特权请求 — 的原因C:\Program Files

C:\Program Files因此,最安全可执行文件的位置。

但是,它不适合在附近存储配置的(便携式)应用程序,.exe因为它们无法保存配置更改。


C:\ProgramData用于存储用户之间共享的应用程序数据。默认情况下,所有用户都可以在此处创建文件和文件夹,但只有创建它们的用户可以修改文件。

此文件夹可轻松用于共享应用程序/工具。同时,我从未在此文件夹中看到过应用程序。


如果您将应用程序放置在用户配置文件中,C:\Users\<username>则系统的其他用户将无法访问它。您拥有配置文件的所有权限,因此您不会收到任何安全警告。这就是 Chrome 安装到用户配置文件中的原因:它可以轻松更新自身而无需提示提升权限。

在每个用户模式下,Windows 安装程序会将.msi文件打包并安装到C:Users\<username>\AppData\Microsoft\Installer\<ProductId>。因此,将非共享应用程序保留在用户的配置文件中是相当标准的。

我的用户配置文件中有utils一个文件夹,里面有仅对我有用的应用程序。此文件夹已添加到我的用户PATH环境变量中,以便于访问。

对于共享应用程序,我使用C:\tools或类似的目录,可能在另一个驱动器上。它被添加到全局PATH变量中。

答案3

我同意已经给出的某些答案。但对于非常小的程序(实用程序),我倾向于将它们放在 bin 文件夹中(在我的情况下是 E:\bin)。这些程序通常是单个 exe 文件或我自己的 python 脚本。我将此文件夹添加到 PATH 变量,以便我可以从命令行使用这些程序(我倾向于经常使用)。

答案4

如果你希望标准化这些应用程序,那么我建议使用巧克力味软件包标准。这有很多好处,主要是因为很多软件都有已经打包为您提供并准备从任何地方安装,只需几个命令即可。

也很容易让你的自己的包对于您不能自由分发的应用程序。您可能确实有权在自己的网络上分发您拥有的任何内容;因此对于这些应用程序,您可以设置本地存储库。如果您管理多台计算机或互联网带宽有限,那么即使对于免费的东西,这也会很有帮助。

相关内容