Я хочу, чтобы мое приложение на C # запускало внешний vbscript.Этот VBS выполняет некоторые действия и должен извлечь данные из реестра.
VBScript запущен, но у меня есть ошибка: Невозможно открыть значение реестра для чтения.
Я не очень понимаю, почему.
Вот как я запускаю VBScript:
Process scriptProc = new Process();
scriptProc.StartInfo.FileName = @"c:\windows\system32\wscript";
scriptProc.StartInfo.WorkingDirectory = repository + p + "\\"; <-- location of my script : C:\temp\soft\
scriptProc.StartInfo.Arguments = "MyScript.vbs";
scriptProc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
scriptProc.StartInfo.Verb = "runas";
scriptProc.Start();
scriptProc.WaitForExit();
scriptProc.Close();
И в моем VBS я читаю значение следующим образом:
strValue = objShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\MyKey\MySubKey\MyReg_Sz_Entry")
Где «MyReg_Sz_Entry» содержит строковое значение.Это значение корректно возвращается, когда я запускаю vbs нормально, но не с моим кодом C #.
У моей учетной записи есть административные привилегии.
Мне нужна помощь:).
Спасибо в