У меня следующая проблема:
У меня есть приложение C #, которое работает как 32-разрядное приложение на моей 64-разрядной машине. Это приложение открывает процесс и запускает wbadmin
для создания резервной копии диска C.
Сейчас: когда я звоню, введите "wbadmin"
в командной строке wbadmin
работает и показывает списки всех его команд.
В моем приложении c #, когда я делаю
ProcessStartInfo info = new ProcessStartInfo("wbadmin", $"start backup -backupTarget:{destinationDrive} -include:C: -quiet -vssCopy")
{
UseShellExecute = false
};
Process p = new Process()
{
StartInfo = info,
EnableRaisingEvents = true
};
p.Start();
, он говорит мне, что указанный файл не может быть найден. Я провел некоторое исследование, и я думаю, что мое приложение ищет wbadmin
в папке WOW64
, где оно не может найти его, потому что оно находится внутри папки System32
.
Как мне сообщить своей программеиспользовать правильный wbadmin.exe
в правильном месте?
Должен ли я запускать приложение как 64-битное приложение для его работы? Если да, то как мне поддерживать 32-битную архитектуру?
Спасибо