¿Dónde instalar pequeños programas sin instaladores en Windows?

¿Dónde instalar pequeños programas sin instaladores en Windows?

En la plataforma Windows, la mayoría de las aplicaciones grandes vienen con su propio instalador que configura carpetas en C:\Program Files, posiblemente en otros lugares, y tal vez agrega algunas claves de registro, etc.

Pero todavía hay bastantes herramientas que consisten en solo una .exeo quizás también una READMEy una .dllo dos.

¿Cómo debo instalar dichas herramientas? ¿Directamente en C:\Program Files? ¿Todo en una subcarpeta debajo C:\Program Files? ¿En algún lugar debajo C:\Users\Me? ¿En algún lugar totalmente diferente?

O tal vez diferentes enfoques para las herramientas con solo una .exepara aquellas que también tienen otros archivos, o tal vez solo las que tienen .dlls deben ser tratadas de manera diferente...

¿Existe alguna forma estándar aceptada de hacer esto? ¿Una "mejor práctica"? Si la respuesta depende de la versión de Windows, estoy usando Windows 7.

En particular, lo que a la gente podría parecerle la respuesta obvia parece tener un problema:

Intenté crear manualmente nuevas subcarpetas en C:\Program Files. De hecho pensé que lo había hecho antes, pero Windows muestra un cuadro de diálogo.Acceso denegado a la carpeta de destino. Esto me hizo pensar dos veces en lugar de simplemente hacer clic a ciegas.Continuar.

Acceso denegado a la carpeta de destino

Suponiendo que mentes más grandes que la mía se hayan topado con esto muchas veces a lo largo de los años, me gustaría preguntar a la comunidad si se ha aceptado algún tipo de "mejores prácticas".

Respuesta1

UsarC:\Tools

oC:\Users\<user>\Tools
 

Estoy usando muchos programas pequeños sin instalador y recomiendo lo siguiente:

  • Guárdalos a todos enC:\Tools
  • Si un programa consta de un solo archivo, colóquelo directamente debajoC:\Tools
  • Si un programa consta de varios archivos, colóquelo enC:\Tools\ProgramName
  • Las herramientas SysInternals tienen una categoría especial C:\Tools\_SysInternalsporque hay muchas

Simplemente me muevo C:\Toolsde una máquina a otra cuando migro, funciona de maravilla.

Ejemplo práctico (lista abreviada):

C:\Herramientas\autoexec-elevated.bat
C:\Herramientas\cleanup.bat
C:\Herramientas\BabelMap.exe
C:\Herramientas\netmon.exe
C:\Herramientas\notifu.exe
C:\Herramientas\putty.exe
C:\Herramientas\UDPixel.exe
C:\Herramientas\batería.vbs

C:\Herramientas\3dclip-1.5.1\
C:\Herramientas\alternatestreamview\
C:\Herramientas\blender-2.71-windows64\
C:\Herramientas\Bloc de notas++\
C:\Herramientas\QueryExpress\
C:\Herramientas\winscp555\
C:\Herramientas\Xinorbis\

C:\Herramientas\_Sysinternals\accesschk\
C:\Herramientas\_Sysinternals\Autoruns\
C:\Herramientas\_Sysinternals\depende22_x64\
C:\Herramientas\_Sysinternals\depende22_x86\
C:\Herramientas\_Sysinternals\LogonSessions\

Espero que esto dé una idea.

EDITAR: información ampliada

Supongo que bajoinstalaren tu pregunta¿Cómo debo instalar dichas herramientas?en realidad te refieres a la configuración manual, algo así comoproceso de copiarLos archivos.

Regla general: utilice carpetas creadas manualmente para archivos mantenidos manualmente. Permita que las carpetas del sistema sean utilizadas por procesos (de instalación) que usted no controla directamente. Obtendrá inmediatamente el beneficio de reconocer qué contenido es "suyo" (y podrá copiarlo libremente) y qué aplicación administra el instalador.

Por lo tanto, al instalar manualmente (copiando), manténgase alejado de

  • C:\Program Files- los programas que se encuentran aquí no se pueden migrar simplemente, deben reinstalarse (da una gran pista para la migración)
  • C:\Program Files (x86)- como lo anterior, pero en sistemas de 64 bits, los programas de 32 bits van aquí (puede dar una pista para determinar si una aplicación en particular es de 32 o 64 bits)
  • C:\ProgramData- Los almacenamientos de aplicaciones que se encuentran aquí muestran que estos programas mantienen algunos de sus datos a su manera. Pero preguntaste sobre poner tuprogramasen Datos? No es Buena idea.
  • C:\Users\Steven\AppData- otra vez, poniendoprogramasen Datos no es una buena idea. Si preguntaste sobre los datos, entonces se pueden escribir varias cosas interesantes sobre este camino. Pero para los programas simplemente "no". :)

Posible camino

  • C:\Users\Steven- puede sertu raíz alternativaSi se trata de una computadora compartida y desea mantenerla ordenada, decide no crear ningún directorio global. Puedes considerarlo C:\Users\Steven\Toolspara tus programas o incluso C:\Users\Steven\Desktop\Toolssi quieres utilizar cómodosEscritorioAcceso a carpetas disponible mediante acceso directo desde muchos lugares de Windows. Pero mejor puede ser el anterior y aún puedes colocar el acceso directo a esta carpeta en el escritorio o cuando sea necesario.

Editar:Consejo útil adicional:

Si desea que algunos de sus pequeños programas sean reconocidos en Windows 10Comenzarmenú (para búsqueda incremental de sus nombres o inicio elevado instantáneo usando Ctrl+ Shift+ Enter),agregue sus accesos directos allí y ejecútelos una vez. (Entonces puedes eliminarlos).

Respuesta2

Hasta donde yo sé, no existe un enfoque universal.

Colocar sus aplicaciones C:\Program Fileses una forma bastante estándar. Y obtendrás elprotección de acceso: los usuarios normales (y los no elevados) no pueden escribir en C:\Program Files. Por lo tanto, no puede eliminar ni sobrescribir accidentalmente dichos archivos; y están mejor protegidos contra los virus. Es por eso que recibe la advertencia (solicitud de elevación) cuando intenta crear una carpeta en formato C:\Program Files.

Por lo tanto, C:\Program Fileses elmás segurolugar para archivos ejecutables.

Sin embargo, no es adecuado para aplicaciones (portátiles) que almacenan su configuración cerca .exeporque no podrán guardar los cambios de configuración.


C:\ProgramDataes para almacenar datos de aplicaciones compartidos entre usuarios. De forma predeterminada, todos los usuarios pueden crear archivos y carpetas aquí, pero solo el usuario que los creó puede modificar los archivos.

Esta carpeta podría usarse fácilmente para aplicaciones/herramientas compartidas. Al mismo tiempo, nunca vi una aplicación en esta carpeta.


Si coloca aplicaciones en su perfil de usuario, C:\Users\<username>otros usuarios del sistema no tendrán acceso a ellas. Tienes todos los permisos para tu perfil, por lo que no recibirás ninguna advertencia de seguridad. Esa es la razón por la que Chrome se instala en el perfil del usuario: puede actualizarse fácilmente sin solicitar elevación.

En el modo por usuario, los paquetes y .msiarchivos de Windows Installer se instalan en archivos C:Users\<username>\AppData\Microsoft\Installer\<ProductId>. Por lo tanto, es bastante estándar mantener aplicaciones no compartidas en el perfil del usuario.

Tengo utilsuna carpeta en mi perfil de usuario con aplicaciones que sólo son útiles para mí. Esta carpeta se agrega a PATHla variable de entorno de mis usuarios para facilitar el acceso.

Para aplicaciones compartidas, uso C:\toolsun directorio similar, posiblemente en otra unidad. Se agrega a la PATHvariable global.

Respuesta3

Estoy de acuerdo con las respuestas ya dadas hasta cierto punto. Pero para programas realmente pequeños (utils) tiendo a colocarlos en la carpeta bin (en mi caso E:\bin). Estos programas suelen ser un único archivo exe o mis propios scripts de Python. Agrego esta carpeta a la variable PATH para poder usar estos programas desde la línea de comandos (que suelo usar bastante).

Respuesta4

Si está buscando estandarizar estas aplicaciones, le sugiero que utilice elchocolateadoestándares del paquete. Esto es bueno por muchas razones diferentes; principalmente porque gran parte del software tieneya ha sido empaquetadopara usted y está listo para instalar desde cualquier lugar con solo unos pocos comandos.

También es fácil hacer tupaquetes propiospara aplicaciones que no puede distribuir libremente. Probablemente tenga derecho a distribuir cualquier cosa que posea en su propia red; entonces para esas aplicaciones puedesconfigurar un repositorio local. Si administra muchas computadoras o tiene un ancho de banda de Internet limitado, esto puede resultar útil incluso para las cosas gratuitas.

información relacionada