FAQ по Visual Basic

Содержание / Windows API Поиск | Далее

§ 5.11. Как привязать программу к компьютеру?

Осуществить привязку программы проще всего к дате создания BIOS материнской платы. Адрес расположения даты в памяти: F000:FFF5. Чтобы считать дату из BIOS, воспользуйтесь нижеследующим кодом:

Private Declare Sub CopyMemory Lib "kernel32" _
    Alias "RtlMoveMemory" _
    (Destination As Any, _
    Source As Any, _
    ByVal Length As Long)

Sub Main()
    Dim lPtr As Long, hMem As Long
    Dim lValue As Long
    InitializeWinIo
    lPtr = MapPhysToLin(&HFFFF5, 8, hMem)
    If lPtr Then
        Dim s$
        s = Space$(8)
        CopyMemory ByVal s, ByVal lPtr, 8
        UnmapPhysicalMemory hMem, lPtr
        MsgBox s
    End If
    ShutdownWinIo
End Sub

В этом коде используются функции из библиотеки WinIo (см. также § 4.2. Как можно прочитать данные с порта или записать данные в порт?).

Авторы:
Дмитрий Сергунин, Master

Предыдущий раздел Следующий раздел

© 2004. При цитировании, пожалуйста, не забудьте поставить ссылку на оригинальную страницу.