id Diska

Vespan

loneliness
Автор темы
Проверенный
2,105
1,633
Версия MoonLoader
.026-beta
Как узнать id диска и записать куда-то
 
Решение
Вот еще варик с ффи:

Lua:
function getHDD()
    local ffi = require("ffi")
    ffi.cdef[[
    int __stdcall GetVolumeInformationA(
        const char* lpRootPathName,
        char* lpVolumeNameBuffer,
        uint32_t nVolumeNameSize,
        uint32_t* lpVolumeSerialNumber,
        uint32_t* lpMaximumComponentLength,
        uint32_t* lpFileSystemFlags,
        char* lpFileSystemNameBuffer,
        uint32_t nFileSystemNameSize
    );
    ]]
    local serial = ffi.new("unsigned long[1]", 0)
    ffi.C.GetVolumeInformationA(nil, nil, 0, serial, nil, nil, nil, 0)
    serial = serial[0]
    return serial
end

winten

Потрачен
409
182
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
 

Vespan

loneliness
Автор темы
Проверенный
2,105
1,633
Lua:
function main()

    if not isSampLoaded() then return end

    sampRegisterChatCommand('test', function() print(getHarddiskSerial()) end)

    wait(-1)
end

function getHarddiskSerial()
    local handle = io.popen('wmic diskdrive get serialnumber')
    local result = handle:read("*a")
    local serial = result:match('SerialNumber%s+(%d+)')
    handle:close()
    return serial
end
Пишу /test и игра сворачивается. А в ~ выводит - [19:08:28.686374] (script) test.lua: 6
 

winten

Потрачен
409
182
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Lua:
function main()

    if not isSampLoaded() then return end

    sampRegisterChatCommand('test', function() print(getHarddiskSerial()) end)

    wait(-1)
end

function getHarddiskSerial()
    local handle = io.popen('wmic diskdrive get serialnumber')
    local result = handle:read("*a")
    local serial = result:match('SerialNumber%s+(%d+)')
    handle:close()
    return serial
end
Пишу /test и игра сворачивается. А в ~ выводит - [19:08:28.686374] (script) test.lua: 6
Чекай мунлоадер лог, там должен быть серийник, либо же ошибки
 

astynk

Известный
Проверенный
742
530
Вот еще варик с ффи:

Lua:
function getHDD()
    local ffi = require("ffi")
    ffi.cdef[[
    int __stdcall GetVolumeInformationA(
        const char* lpRootPathName,
        char* lpVolumeNameBuffer,
        uint32_t nVolumeNameSize,
        uint32_t* lpVolumeSerialNumber,
        uint32_t* lpMaximumComponentLength,
        uint32_t* lpFileSystemFlags,
        char* lpFileSystemNameBuffer,
        uint32_t nFileSystemNameSize
    );
    ]]
    local serial = ffi.new("unsigned long[1]", 0)
    ffi.C.GetVolumeInformationA(nil, nil, 0, serial, nil, nil, nil, 0)
    serial = serial[0]
    return serial
end
 
  • Нравится
Реакции: Vespan

Hideme Flow

Известный
555
193
Последнее редактирование:
  • Нравится
Реакции: Vespan