Member 12589590 Ответов: 2

[Vb] мне нужно открыть реестр и подключиться к компьютеру


Здравствуйте, мне нужно подключиться к компьютеру, но с реестром.

я получил это, но он просто открывает regedit, а потом ничего не делает.



Private Sub Button1_Click_3(sender As Object, e As EventArgs) Handles Button1.Click


      System.Diagnostics.Process.Start("regedit.exe")

      System.Threading.Thread.Sleep(2000)

      SendKeys.Send("{%}")
      SendKeys.Send("{ENTER}")
      SendKeys.Send("{DOWN}")
      SendKeys.Send("{DOWN}")
      SendKeys.Send("{DOWN}")
      SendKeys.Send("{DOWN}")
      SendKeys.Send("{ENTER}")
      SendKeys.Send(Hostname.Text)
      SendKeys.Send("{ENTER}")

  End Sub


Что я уже пробовал:

код ниже

АЛТ, ввод, вниз, вниз, вниз, вниз, Хоста.текст, введите

прежде чем отправлять

2 Ответов

Рейтинг:
1

OriginalGriff

Во-первых, зачем тебе это? Правильно извлеките запись реестра и используйте возвращаемое ею значение: Реестра.Метод GetValue (Строка, Строка, Объект) (Майкрософт.С Win32)[^]
Во-вторых, вы действительно ожидали, что это сработает? Первое, что сделает Regedit, - это запустит UAE, чтобы получить разрешение пользователя на редактирование реестра: а вы сами этого дать не можете...


Рейтинг:
1

glen205

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

Некоторая информация о SendKeys здесь (MSDN) и здесь (переполнение стека)

Вы посылаете ALT (который в качестве нажатия клавиши выделит меню), а затем ENTER (который затем должен открыть первое меню). Попробуйте вместо этого открыть меню Файл за одну операцию, отправив ALT+F

Так что вместо

SendKeys.Send("{%}")
SendKeys.Send("{ENTER}")

пробовать
SendKeys.Send("%{f}")


Только еще одно-не могли бы Вы уточнить, что "не работает"? Открывается ли приложение? Выделяет ли меню, но не выбирает? Появляется ли вообще меню? Я предлагаю решение того, что, по моему мнению, может быть проблемой, но ваш вопрос немного неясен.

Удачи,
Лощина.