Преобразование строки в REG_BINARY - PullRequest
1 голос
/ 14 июля 2020

Я создаю приложение в Visualstud ios VB для автоматической установки принтера в windows. Проблема в том, что принтеру нужен логин и пароль. Я нашел запись в реестре, где он хранится, но пароль хранится в формате REG_BINARY.

Вот как это выглядит после ручной записи пароля в настройки принтера - см. UserPass: введите описание изображения здесь

Подскажите, пожалуйста, как преобразовать пароль (в строке) в reg_binary (см. Вложение - красный квадрат)?

Пароль в данном случае был 09882, и он был сохранен как 98 09 e9 4c c3 24 26 35 14 6f 83 67 8c ec c4 90. Есть ли в VB какая-либо функция для преобразования 09882 в этот REG_BINARY формат, пожалуйста?

1 Ответ

2 голосов
/ 14 июля 2020

REG_BINARY означает, что это двоичные данные, а двоичные данные в. NET представлен массивом Byte. Значения, которые вы видите в RegEdit, являются шестнадцатеричными значениями отдельных байтов, что является обычным представлением, поскольку каждый байт может быть представлен двумя цифрами. Вам нужно преобразовать ваш String в массив Byte, а затем сохранить его в реестре, как и любые другие данные.

Как вы это сделаете, зависит от того, что ожидает приложение. Возможно, это просто преобразование текста в Bytes на основе указанной кодировки c, например Encoding.ASCII.GetBytes. Может это ха sh. Возможно, вам придется провести исследование и / или поэкспериментировать, чтобы точно узнать, что ожидается.

...