Имя пользователя:
Пароль:
 

Название темы: Регфайл, синтаксис.
Показать сообщение отдельно

Аватара для proxy

Старожил


Сообщения: 460
Благодарности: 152

Профиль | Отправить PM | Цитировать


Получается следующий результат:

Код: Выделить весь код
$sSerial = 'VMKJGNDIDNWLDMKJGNDIDNWLD'
MsgBox(0, 'Строка для reg-файла', _StringToRegFileFormat($sSerial, 'REG_EXPAND_SZ'))

Func _StringToRegFileFormat($sData, $sType, $iSlash=10)
    Local $sHex, $iHexLength, $aData, $sDataResult, $i, $j=4
    If $iSlash < 0 OR ($iSlash > 0 AND $iSlash < 4) Then $iSlash = 4

    Switch $sType
        Case 'REG_DWORD'
            Return 'dword:' & Hex($sData, 8)
        Case 'REG_BINARY'
            $sType = 'hex:'
            $iHexLength = 3
        Case 'REG_EXPAND_SZ'
            $sType = 'hex(2):'
            $iHexLength = 2
        Case 'REG_MULTI_SZ'
            $sType = 'hex(7):'
            $iHexLength = 7
        Case Else
            Return '"' & $sData & '"'
    EndSwitch

    $sData = StringLower(Hex(StringToBinary($sData, 2), $iHexLength))
    For $i=1 To StringLen($sData) Step 2
        $sDataResult &= StringMid($sData, $i, 2) & ','
        If $j == $iSlash Then
            $j = 0
            $sDataResult &= '\' & @CRLF
        EndIf
        $j += 1
    Next

    Return $sType & $sDataResult & '00,00'
EndFunc
вариант без слешей:
Код: Выделить весь код
_StringToRegFileFormat($sSerial, 'REG_EXPAND_SZ', 0)
Тип: REG_SZ записывается как есть, в кавычках:
Цитата:
"Name Value"="Value Data"

-------
Мысли-читатель сломался, может подробней расскажите?
А где исходный код? Или мы стихи обсуждаем?! )) Настройки темы > Решено ?


Последний раз редактировалось proxy, 24-06-2009 в 04:51.

Это сообщение посчитали полезным следующие участники:

Отправлено: 03:17, 24-06-2009 | #11

Название темы: Регфайл, синтаксис.