Há uma resposta aqui:
Parece ser uma maneira fácil de fazer isso. Basta criar um arquivo, colocar o código do artigo nele e modificar a letra da unidade, se necessário. Não deve demorar mais de 5 minutos.
Gostaria que minha unidade virtual TrueCrypt agisse como uma unidade USB ou CD / DVD recém-inserida, executando comandos no arquivo autorun.inf da partição.
Li várias sugestões on-line, incluindo a criação de um arquivo .bat ou a instalação do software, para que o Windows pense que se trata de um CD, mas gostaria de saber a maneira mais fácil e menos intrusiva de executá-lo. Ou seja, eu quero evitar instalar ou mexer com o computador host o máximo possível, já que isso é uma unidade totalmente portátil.
EDIT: Para esclarecer, eu tecnicamente tenho dois arquivos autorun.inf separados no meu pen drive: há um no diretório base da unidade USB que corretamente me pede para executar o TrueCrypt assim que eu inserir a unidade, e há é um segundo autorun.inf que está dentro do contêiner criptografado.
O segundo arquivo autorun.inf reside no diretório base da unidade virtual criada após as montagens TrueCrypt (na verdade, esse arquivo inf foi criado pelo LiberKey, que é a interface de usuário portátil que estou usando dentro do contêiner). Eu gostaria de poder executar este segundo arquivo inf assim que o drive virtual for montado.
Há uma resposta aqui:
Parece ser uma maneira fácil de fazer isso. Basta criar um arquivo, colocar o código do artigo nele e modificar a letra da unidade, se necessário. Não deve demorar mais de 5 minutos.
Eu sei que essa pergunta é antiga, mas ela está no topo da lista de pesquisa, por isso pensei em postar minha solução.
Montei o disco e iniciei meus programas usando um arquivo .bat. Eu inicio o arquivo .bat em tarefas agendadas "no logon".
Aqui está o meu bastão. Aproveite.
Note, você deve configurar o truecrypt para não montar automaticamente seus "favoritos" e há uma situação que o seguinte morcego não manipula: Quando um volume é montado em uma letra de unidade alternativa à especificada.
REM - Truecrypt mount and launch file - 2013
REM - Set variables as needed below
@ECHO OFF
SET tcexec="%PROGRAMFILES%\truecrypt\truecrypt.exe"
SET mountdrive=x
SET volumefolder="%USERPROFILE%\truecrypt"
SET volumename=TrueCrypt-Volume
IF EXIST %mountdrive%: goto DriveExists
IF NOT EXIST %volumefolder%\%volumename% goto NoVolume
IF NOT EXIST %tcexec% goto noTC
REM Mount volume
cd %volumefolder%
%tcexec% /v %volumename% /l%mountdrive% /a /q
echo %ERRORLEVEL%
if ERRORLEVEL 1 GOTO mountfail
if ERRORLEVEL 0 GOTO startprograms
:startprograms
REM ******************************
REM ** Start your programs here **
REM ******************************
REM start "" "C:\Users\<userid>\AppData\Roaming\AeroFSExec\aerofs.exe"
REM start "" "C:\Program Files\ownCloud\owncloud.exe"
REM ********************************
REM ** END of Program Start block **
REM ********************************
goto end
:mountfail
echo Truecrypt failed to mount volume.
goto end
:noTC
echo Cant find truecrypt at: %tcexec%
goto end
:NoVolume
echo Identified volume does not exist: %volumefolder%\%volumename%
goto end
:DriveExists
echo Drive letter %mountdrive% already exists, cannot mount truecrypt volume
goto end
:End
A Microsoft possui um utilitário (também conhecido como "PowerToy") para Windows chamado TweakUI que permite ativar ou desativar a reprodução automática em suas unidades (em Meu computador | Reprodução Automática | Unidades no painel esquerdo do programa TweakUI). Acabei de montar um volume TrueCrypt e ele é visível no TweakUI - então parece que eu poderia fazer uma reprodução automática ao ativá-lo). Desculpe eu não posso testá-lo ainda mais porque eu não tenho um arquivo autorun.inf para brincar).
Em um arquivo .bat, você pode chamar o arquivo anothr .bat de forma simples (veja a linha que começa com CALL):
O arquivo MyBat1.bat tem este texto:
@ECHO OFF
ECHO Here i will do things, like mount the .tc file
REM Here would go the command to mount the .tc file as drive letter X:
ECHO I am going to call to another bat script
CALL X:\MyBatFile_InsideTheTC.bat
ECHO I can do more things after thet other script runs
X:\MyBatFile_InsideTheTC.bat has this text:
@ECHO OFF
START "WhatEverTitleYouWant" "X:\MyDirectAccess.lnk"
... e assim por diante ...
X: \ MyDirectAccess.lnk é um arquivo criado pelo windows quando você cria um shotcut para um programa, também pode ser qualquer comando que desejar como iniciar serviços, etc ... ponho o exemplo de um .lnk desde então. O lnk pode ser configurado (em propriedades) para rodar com privilégios elevados, então ele solicita ao usuário essa elevação, e é uma maneira muito fácil de executar serviços depois de montar um volume de tc
Isso também é válido para o VeraCrypt (sucessor do TrueCrypt que usa o código-fonte do TrueCrypt).
Exemplo: Tenha a pasta de dados (htdoc) do servidor Web (Apache) dentro do arquivo .tc (.hc para VeraCrypt), o serviço Apache deve ser definido como início manual e somente após montar o arquivo .tc, o serviço pode ser iniciado por [net star "Apache24"].
Esta configuração é para o Apache não portável, já que o Apache portátil não teria nenhum serviço e inicia com um comando, mas dá uma boa idéia do que alto nível pode ser feito.