CMD, ícones e arquivos em lote

CMD, ícones e arquivos em lote

Estou tentando manter meus scripts e inicializações de usuários em duas pastas diferentes (o objetivo final é ocultar os scripts principais do programa)

Então coloquei os arquivos em lote na pasta de script, criei atalhos e coloquei-os em "RunMe"

Isso funciona, exceto por uma ressalva. Os campos "Destino" e "Iniciar em" mostram a letra da unidade RELACIONADA À MINHA MÁQUINA. Quando copio pastas para um pendrive USB (que é "R:" na minha máquina), tenho quase certeza de que o caminho não será atualizado. Mais especificamente, quando eu dou USB para outro usuário final, a letra da unidade no atalho estará terrivelmente errada?

Algumas semanas atrás, alguém forneceu um script em lote 'independente da unidade' (%~d0\foldername) ... mas até onde eu sei, você não pode adicionar um ícone diretamente a um arquivo em lote, apenas a um atalho . (Quero manter os ícones com minha 'marca', se possível)

Alguém tem alguma solução alternativa?

Responder1

Se você quiser manter a funcionalidade de um atalho, mas também manter os caminhos portáteis, você pode simplesmente tornar os próprios links de atalho relativos, como usar o método descritoaqui:

%windir%\explorer.exe "..\my\files"

Claro, a desvantagem deste método é que você não pode usar o mesmo hack para fornecer um caminho relativo para o arquivo do ícone, então deve ser um ícone que esteja disponível no computador do usuário.


Editar: em vez de chamar o programa desejado diretamente com explorer.exe, você pode chamar um script de inicialização personalizado do Powershell que inicia, reposiciona e gerencia seus programas. Dessa forma, você pode usar um método como o mostradoaquipara reposicionar sua janela.

informação relacionada