Alterando a pasta pública do Windows em script em lote

3

Instalei o Steam em um disco rígido externo para poder jogar em diferentes computadores movendo apenas a unidade. Como salvar jogos geralmente são salvos em Meus Documentos ou em AppData, mas eu quero que eles se movam com o disco rígido externo, eu escrevi um arquivo de lote que define as variáveis de ambiente antes de iniciar o vapor.

setocal
set USERPROFILE=%EXTERNAL_LETTER%\Profile\Me
set APPDATA=%USERPROFILE%\AppData\Roaming
...
start %TARGETAPP%
endlocal

Não tenho certeza se esse é o jeito certo de fazer isso no Windows, mas parece funcionar.

No entanto, um jogo salva seus jogos na pasta Documentos compartilhados. Tentei definir% PUBLIC% e% ALLUSERSPROFILE%, mas isso não parece afetar o local de exibição do jogo. É possível fazer com que este programa use uma pasta diferente de Documentos Compartilhados , seja por variáveis de ambiente ou por outros meios?

A alteração em Documentos Compartilhados deve afetar apenas o programa, não quero que seja uma alteração permanente ou em todo o sistema para o Windows.

    
por Angus 13.11.2009 / 13:17

2 respostas

1

Ah, STALKER.

Se você está no Vista, ou 7 (ou acima, para pessoas lendo isso no futuro), você pode usar links simbólicos NTFS para redirecionar o salvamento, mas você terá que fazer isso em todos os PCs em que você jogar o jogo. em. É uma ferramenta de linha de comando e funciona assim:

mklink /H Link Target

Como em, você moveria o arquivo salvo para seu HDD externo, abriria uma janela cmd, cd para o diretório de salvamento e iria para mklink /H [save name].sav %EXTERNAL_LETTER%\Saves\Stalker\[Save Name].sav

    
por 13.12.2009 / 15:29
0

Veja a chave de registro:% HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders

Acredito que esta é a chave "Common Documents", cujo valor na minha máquina é "% PUBLIC% \ Documents".

Você pode tentar definir PUBLIC ou, se isso não funcionar, escrever um script que salve e altere essa chave no registro.

    
por 13.11.2009 / 14:39