Onde instalar pequenos programas sem instaladores no Windows?

30

Na plataforma Windows, a maioria dos aplicativos grandes vem com seu próprio instalador, que configura pastas em C:\Program Files , possivelmente em outros lugares, e talvez adicionando algumas chaves do Registro, etc.

Mas ainda existem algumas ferramentas que consistem em apenas .exe ou talvez README e .dll ou duas.

Como devo instalar essas ferramentas? Diretamente em C:\Program Files ? Tudo em uma subpasta em C:\Program Files ? Algum lugar abaixo de C:\Users\Me ? Algum lugar totalmente diferente?

Ou talvez abordagens diferentes para as ferramentas com apenas um .exe para aquelas que também têm outros arquivos, ou talvez apenas aquelas com .dll s precisem ser tratadas diferentemente ...

Existe alguma maneira aceita padrão para fazer isso? Uma "melhor prática"? Se a resposta depender da versão do Windows, estou usando o Windows 7.

Em particular, o que pode parecer as pessoas como a resposta óbvia parece ter um problema:

Eu tentei criar manualmente novas subpastas em C:\Program Files . Na verdade, eu pensei que tinha feito isso antes, mas o Windows coloca um diálogo Acesso à pasta de destino negado . Isso fez com que eu pensasse duas vezes, em vez de apenas clicar cegamente em Continuar .

Supondoquementesmaioresdoqueasminhassedepararamcomissomuitasvezesaolongodosanos,gostariadeperguntaràcomunidadesealgumtipode"melhor prática" passou a ser aceito.

    
por hippietrail 11.01.2013 / 09:18

10 respostas

20

Use C:\Tools

ou C:\Users\<user>\Tools

Estou usando muitos programas pequenos sem o instalador e estou recomendando o seguinte:

  • Salve todos em C:\Tools
  • Se um programa consistir em um único arquivo, coloque-o diretamente em C:\Tools
  • Se um programa consistir em vários arquivos, coloque-o em C:\Tools\ProgramName
  • As ferramentas SysInternals têm uma categoria especial C:\Tools\_SysInternals , porque há muitas delas

Estou simplesmente movendo C:\Tools de máquina para máquina ao migrar, funciona como um encanto.

Amostra prática (listagem encurtada):

C:\Tools\autoexec-elevated.bat
C:\Tools\cleanup.bat
C:\Tools\BabelMap.exe
C:\Tools\netmon.exe
C:\Tools\notifu.exe
C:\Tools\putty.exe
C:\Tools\UDPixel.exe
C:\Tools\battery.vbs

C:\Toolsdclip-1.5.1\
C:\Tools\alternatestreamview\
C:\Tools\blender-2.71-windows64\
C:\Tools\Notepad++\
C:\Tools\QueryExpress\
C:\Tools\winscp555\
C:\Tools\Xinorbis\

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

Espero que isso dê uma ideia.

EDIT: informações estendidas

Suponho que em instale a sua pergunta Como devo instalar essas ferramentas? você realmente quer dizer configuração manual, algo como copiando os arquivos.

Regra geral: use pastas criadas manualmente para arquivos mantidos manualmente. Deixe as pastas do sistema serem usadas por processos (de instalação) que você não controla diretamente. Você obterá imediatamente o benefício do reconhecimento de qual conteúdo é "seu" (e você pode copiá-lo livremente) e qual aplicativo é gerenciado pelo instalador.

Então, ao instalar manualmente (copiando), fique longe de

  • C:\Program Files - os programas encontrados aqui não podem ser simplesmente migrados, devem ser reinstalados (dá uma ótima dica para migração)
  • C:\Program Files (x86) - como acima, mas em sistemas de 64 bits, programas de 32 bits vão aqui (pode dar uma dica para determinar se um aplicativo em particular é de 32 bits ou 64 bits)
  • C:\ProgramData - os armazenamentos de aplicativos encontrados aqui mostram que esses programas mantêm alguns de seus dados à sua maneira. Mas você perguntou sobre colocar seus programas em Dados? Não é uma boa ideia.
  • C:\Users\Steven\AppData - novamente, colocar programas em Dados não é uma boa ideia. Se você perguntasse sobre dados, então várias coisas interessantes podem ser escritas sobre esse caminho. Mas para programas simplesmente "não". :)

Caminho possível

  • C:\Users\Steven - pode ser sua raiz alternativa se este for um computador compartilhado e você quiser mantê-lo organizado, então você decide não criar diretórios globais. Você pode considerar C:\Users\Steven\Tools para seus programas ou até mesmo C:\Users\Steven\Desktop\Tools se quiser usar o confortável acesso à pasta Desktop disponível por meio de atalhos de muitos lugares no Windows. Mas melhor pode ser o antigo e você ainda pode colocar o atalho para esta pasta para a área de trabalho ou sempre que necessário.

Editar: Dica útil adicional:

Se você quiser que alguns dos seus pequenos programas sejam reconhecidos no menu Windows Iniciar (para busca incremental de seus nomes ou início instantâneo elevado usando Ctrl + Shift + Enter ), adicione seus atalhos lá e inicie-os uma vez . (Então você pode removê-los.)

    
por 24.09.2014 / 04:26
9

Tanto quanto sei, não há uma abordagem universal.

Colocar seus aplicativos em C:\Program Files é uma maneira bastante padrão. E você obterá a proteção de acesso : os usuários regulares (e não elevados) não poderão gravar em C:\Program Files . Então você não pode acidentalmente excluir, substituir esses arquivos; e eles estão mais protegidos contra vírus.

É por isso que você recebe o aviso - solicitação de elevação - quando tenta criar uma pasta em C:\Program Files .

Portanto, C:\Program Files é o lugar mais seguro para arquivos executáveis.

No entanto, não é adequado para aplicativos (portáteis) que armazenam suas configurações perto de .exe , porque eles não poderão salvar as alterações de configuração.

C:\ProgramData é para armazenar dados de aplicativos compartilhados entre usuários. Por padrão, todos os usuários podem criar arquivos e pastas aqui, mas somente o usuário que os criou pode modificar os arquivos.

Esta pasta pode ser facilmente usada para aplicativos / ferramentas compartilhados. Ao mesmo tempo, nunca vi um aplicativo nesta pasta.

Se você colocar aplicativos no seu perfil de usuário, C:\Users\<username> , outros usuários do sistema não terão acesso a ele. Você tem todas as permissões para o seu perfil, então você não receberá nenhum aviso de segurança. Essa é a razão pela qual o Chrome é instalado no perfil do usuário: ele pode se atualizar facilmente sem solicitar a elevação.

No modo por usuário, pacotes do Windows Installer, .msi files, instale em C:Users\<username>\AppData\Microsoft\Installer\<ProductId> . Portanto, é bastante normal manter os aplicativos não compartilhados no perfil do usuário.

Eu tenho a pasta utils no perfil do meu usuário com aplicativos que são úteis apenas para mim. Esta pasta é adicionada à variável de ambiente PATH dos meus usuários para facilitar o acesso.

Para aplicativos compartilhados, eu uso C:\tools ou diretório semelhante, possivelmente em outra unidade. É adicionado à variável global PATH .

    
por 19.09.2014 / 09:42
7

Concordo com as respostas já dadas em algum momento. Mas para programas muito pequenos (utils) eu costumo colocá-los na pasta bin (no meu caso E: \ bin). Esses programas geralmente são arquivos exe únicos ou meus próprios scripts python. Eu adiciono esta pasta à variável PATH para que eu possa usar esses programas a partir da linha de comando (que eu costumo usar bastante).

    
por 11.01.2013 / 10:47
5

Até onde sei, não há práticas recomendadas. Cabe a você decidir individualmente como você quer lidar com isso.

Eu costumo seguir o mesmo padrão de qualquer aplicativo com um instalador. Se é um executável ou biblioteca eu colocaria em \Program Files\ se for 64Bit e Program Files (x86)\ se for 32Bit.

Arquivos de dados tendem a ser armazenados em minhas pastas Users , pois normalmente são específicos de um usuário.

Existem também aplicativos como o Google Chrome e o Click-Once Applications, que são implantados em Users\AppData\ , mas normalmente não estão disponíveis para vários perfis.

Eu prefiro o primeiro método, porque se eu precisar fazer login em outro perfil ou como administrador, ainda posso acessar os aplicativos.

Com relação ao aviso de permissão. É exatamente isso, um aviso . É simplesmente para avisá-lo de usar a pasta pelas razões erradas, mas isso não impede que você a use.

    
por 11.01.2013 / 09:55
3

Se você deseja padronizar esses aplicativos, sugiro usar os padrões de pacote Chocolatey . Isso é bom por vários motivos diferentes; principalmente porque grande parte do software já foi já embalado e está pronto para ser instalado de qualquer lugar com apenas alguns comandos.

Também é fácil fazer seus pacotes próprios para aplicativos que você não pode distribuir gratuitamente. Você provavelmente tem o direito de distribuir qualquer coisa que você possui em sua própria rede; Portanto, para esses aplicativos, você pode configurar um repositório local . Se você estiver gerenciando muitos computadores ou tiver largura de banda limitada, isso pode ser útil até mesmo para o material gratuito.

    
por 22.09.2014 / 08:15
2

Se você escolher as opções de instalação padrão do cygwin, ele colocará todos os seus arquivos em c: \ cygwin. Eu tomaria a mesma abordagem. Eu pessoalmente tenho uma pasta c: \ apps. No passado, usei c: \ utils e c: \ cli (abreviação de linha de comando). Isso realmente depende de como você deseja organizar seus arquivos. Gostaria de sugerir para utilitários únicos para colocá-los em uma pasta catchall. Para um conjunto de utilitários (por exemplo, cygwin, sysinternals, rktools), posso sugerir uma subpasta própria. Por exemplo, você pode colocar todos os sysinternals dentro de c: \ apps \ sysinternals. Se você instalar o cygwin, isso levará a maioria (se não todos) dos comandos Unix que você passou a amar.

Lembre-se de alterar suas variáveis ambientais (Iniciar > Painel de controle > Sistema > Avançado > Variáveis ambientais) e acrescentar novos caminhos de aplicativos à sua variável de sistema PATH. Isso permite executá-los sob demanda a partir do prompt de comando ou usando o Windows + R (comando de execução).

    
por 19.09.2014 / 08:21
1

C:\Users\Me\toolName (também conhecido como% homepath% \ toolName) é o local correto de colocar as ferramentas assumindo que você deseja para o usuário Me , já que algumas dessas ferramentas gravam arquivos (temp) e requerem permissão do usuário em ordem. para gravar na pasta Program files . Outra vantagem é que você não vai esquecer de fazer o backup porque já está no espaço do usuário.

    
por 24.09.2014 / 13:53
0

Não há regras sobre isso, você pode instalá-las onde quiser, mas instalá-las no OSP (Operating System Partition) em uma pasta que não seja do usuário é geralmente uma boa ideia, porque você obterá a as mesmas proteções de acesso que você tem em outros aplicativos; isso torna mais difícil excluir acidentalmente ou modificá-los por terceiros (por exemplo, vírus).

Pessoalmente, eu costumo colocar o programa em "C: \ Program Files (x86)", porque a maioria dos programas que eu encontrei são 32 bits, mas se fosse um programa de 64 bits, eu colocaria em C: \ Program Files ". Se é um programa relacionado ao sistema (por exemplo: Imagex.exe), então eu vou colocá-lo em" C: \ Windows \ system32 "para programas de 32 bits, e" C: \ Windows \ system32 "para programas de 64 bits para permitir mais fácil acessar a partir da linha de comando ao executar prompts de comando elevados, porque você inicia em C: \ Windows \ system32 "por padrão; isso significa que você pode digitar "name.exe" em vez de C: \ location \ name.exe "para executar o programa.

Algumas pessoas preferem separar seu computador portátil (não requer instalação ou executar alternações não supervisionadas fora de sua pasta) e programas não baseados em instalador (não portáteis, mas não exigem o uso de um instalador) de programas comuns criando um novo diretório no seu OSP (por exemplo: C: \ Arquivos de Programas Portáteis (x86), ou C: \ Dumpable Program Files (x86). Eu aconselharia o 2º dos 2, dado que é maior nível de precisão, mesmo que não o faça. Não soa tão bonito.

Para resumir, não há regras, no entanto, se você instalá-las no OSP (em uma pasta que não seja de usuário), poderá ajudar a proteger o programa contra desinstalações / modificações indesejadas (incluindo modificações maliciosas); em algumas circunstâncias, a organização pode ser benéfica (por exemplo: a pasta system32 mencionada anteriormente para programas CLI do sistema).

    
por 21.09.2014 / 02:22
0

Acho que criar um atalho para C:\Tools no menu Send To no Windows é a melhor opção, pois é sempre acessível de qualquer lugar. Dessa forma, você pode rapidamente "instalar" seus pequenos programas clicando com o botão direito do mouse neles e escolhendo Ferramentas fora do menu Enviar para de qualquer lugar no Windows.

Eu tenho este tutorial sobre Como adicionar ao menu Enviar para de HowToGeek
Eu colo o resumo:

To get to the SendTo folder, you’ll need to open up an Explorer window, and then paste in the following to the address bar.

%APPDATA%\Microsoft\Windows\SendTo

     

Em seguida, cole o atalho da pasta na qual você deseja que seus programas sejam copiados.

Então, toda vez que você baixar um novo aplicativo portátil, basta extraí-lo e enviá-lo para esse lugar.
O único problema é a criação de atalhos que acho que vale a pena fazê-lo manualmente. Atenciosamente.

    
por 24.09.2014 / 00:03
0

A variável de ambiente Path padrão do sistema nas janelas é algo como (dependendo da versão das janelas instaladas):

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

Fora dessas opções,% SystemRoot% (que normalmente é C:/ ) parece ser a melhor escolha para você ler / escrever e será fácil fazer referência posteriormente.

    
por 18.02.2017 / 16:14

Tags