5

С помощью c# или командного файла я монтирую том trueCrypt, расположенный по адресу

A:\volumeTrueCrypt.tc

С помощью c# я делаю:

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();
}

альтернатива - запустить команду в командной строке как:

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

В любом случае я получаю ошибку:

Почему я получаю эту ошибку? Я смог выполнить эту команду в первый раз. В тот момент, когда я отключил том и попытался смонтировать его снова, я получил эту ошибку. Я знаю, что буква диска W доступна, потому что она отображается в виде доступной буквы на истинном склепе, если я могу открыть ее вручную:

Если я затем нажму на кнопку монтирования и затем введу пароль truecrypt (truecrypt - это пароль), он будет успешно смонтирован на диске w. Почему я не могу смонтировать его из командной строки !? Если я изменю букву диска в командной строке, это сработает. Я хочу использовать диск W, хотя. Другими словами, выполнение

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

успешно смонтирует этот том на диске z, но я не хочу монтировать его на диске z Я хочу смонтировать его на диске w. В первый раз, когда я запускал пакет, он работал нормально. Также, если я перезагружаю свой компьютер, я считаю, что он должен работать. Дополнительную информацию о том, как использовать trueCrypt через командную строку, можно найти по адресу: http://www.truecrypt.org/docs/?s=command-line-usage.


редактировать

Я также исследовал, когда происходит эта ошибка. Для того, чтобы сгенерировать эту ошибку, вам нужно выполнить следующие шаги.

1) выполнить команду: (обратите внимание на аргумент /q в конце для тишины)

"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

обратите внимание, я монтирую на букву N

2) Теперь объем должен быть установлен.

3) Откройте trueCrypt и вручную отключите этот том (без использования командной строки)

4) Попытайтесь запустить ту же командную строку (без /q, чтобы вы увидели ошибку)

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

5) должна появиться ошибка

Так что проблема возникает, когда я вручную отключаю том. Если я отключаю его из командной строки, я не получаю ошибок. Но я думаю, что это ошибка от TrueCrypt

1 ответ1

3

Я отправил отчет об ошибке в trueCrypt. Я нашел, как повторить проблему, хотя. Если вы отключите том от программы, которая не имеет прав администратора, а затем попытаетесь смонтировать тот же том в тот же самый диск с программой, которая имеет права администратора, это не сработает. То же самое происходит, если вы делаете это иначе arrownd. Короче говоря, если вы всегда монтируете и отключаете без прав администратора, у вас все в порядке.

В моем случае я создавал программу, которая запускалась с правами администратора. И каждый раз, когда я выполнял TrueCrypt.exe, у меня возникали проблемы, потому что trueCrypt.exe работал без прав администратора. То, что я должен сделать, чтобы решить проблему, должен был изменить:

теперь моя программа и trueCrypt.exe будут работать с правами администратора, и теперь у меня нет проблем;)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .