Letra de unidade TrueCrypt não disponível

Letra de unidade TrueCrypt não disponível

Com c#ou um arquivo em lote eu monto um volume trueCrypt localizado em

A:\volumeTrueCrypt.tc

Com c#eu faço:

static void Main(string[] args)
{
    var p = Process.Start(
         fileName:@"C:\Program Files\TrueCrypt\TrueCrypt.exe",
         arguments:@"/v a:\volumetruecrypt.tc /lw /a /p truecrypt"
    );
    p.WaitForExit();
}

a alternativa é executar o comando na linha de comando como:

C:\Windows\system32>"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v "a:\volumetruecrypt.tc" /lw /a /p truecrypt

De qualquer forma, recebo o erro:

insira a descrição da imagem aqui

Por que recebo esse erro? Consegui executar esse comando pela primeira vez. No momento em que desmontei o volume e tentei montá-lo novamente, recebi esse erro. Eu sei que a letra da unidade W está disponível porque aparece como uma letra disponível no true crypt se eu abri-la manualmente:

insira a descrição da imagem aqui

Se eu clicar no botão montar e digitar a senha truecrypt(truecrypt é a senha), ele será montado com sucesso na unidade w. Por que não consigo montá-lo a partir da linha de comando!? Se eu alterar a letra da unidade na linha de comando, ela funcionará. Eu quero usar a unidade W. Em outras palavras, executar

 "C:\Program Files\TrueCrypt\TrueCrypt.exe" /v "a:\volumetruecrypt.tc" /lz /a /p truecrypt

montarei com êxito esse volume na unidade z, mas não quero montá-lo na unidade z. Quero montá-lo na unidade w. A primeira vez que executei o lote funcionou bem. Além disso, se eu reiniciar meu computador, acredito que deve funcionar. Mais informações sobre como usar o trueCrypt por meio da linha de comando podem ser encontradas em:http://www.truecrypt.org/docs/?s=command-line-usage


Editar

Eu também estava investindo quando esse erro ocorre. Para gerar este erro você precisa seguir estes passos.

1) execute o comando: (observe o argumento /q no final para silêncio)

"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v "a:\volumetruecrypt.tc" /ln /a /p truecrypt /q

"C...TrueCrypt.exe"  = location where trueCrypt is located
/v "path"            = location where volume is located
/n                   = drive letter n
/p truecrypt         = password is "trueCrypt"
/q                   = execute in quiet mode. do not show window

note que estou montando na letra n da unidade

2) agora o volume deve ser montado.

3) Abra o trueCrypt e desmonte manualmente esse volume (sem usar linha de comando)

4) Tente executar a mesma linha de comando (sem o /q para ver o erro)

"C:\Program Files\TrueCrypt\TrueCrypt.exe" /v "a:\volumetruecrypt.tc" /ln /a /p truecrypt

5) um erro deve aparecer

Portanto, o problema ocorre quando desmonto manualmente o volume. Se eu desmontá-lo da linha de comando, não recebo erros. Mas acho que isso é um bug do trueCrypt

Responder1

Enviei o relatório de bug para trueCrypt. Eu descobri como replicar o problema. Se você desmontar um volume de um programa que não tem direitos de administrador e tentar montar o mesmo volume na mesma unidade com um programa que tenha direitos de administrador, isso não funcionará. A mesma coisa acontece se você fizer o contrário. Resumindo, se você sempre monta e desmonta sem privilégios de administrador, tudo bem.

No meu caso, eu estava criando um programa que rodava com privilégios de administrador. E toda vez que executei o TrueCrypt.exe, tive problemas porque o trueCrypt.exe estava sendo executado sem privilégios de administrador. O que tive que fazer para resolver o problema foi mudar:

insira a descrição da imagem aqui

agora meu programa e trueCrypt.exe serão executados com privilégios de administrador e agora não tenho problemas;)

informação relacionada