VMProtectGetCurrentHWID

Issues related to VMProtect
pupsik
Posts: 1
Joined: Tue Aug 28, 2012 12:29 pm

Re:

Post by pupsik »

Admin wrote:
И, собственно, как его получать ? Примеры только на Сях (
Я попытался получить на Delphi.
Если вы используете Delphi2009 и выше - вместо PChar надо использовать PAnsiChar (как в VMProtectSDK.pas, так и в определении pBuf):

Code: Select all

function VMProtectGetCurrentHWID(Buffer:PAnsiChar; BufferLen: Cardinal): Integer; stdcall;
...
var pBuf:PAnsiChar; 
...
Все остальное правильно.
не все, размер буфера у него равен 0, а должен быть nSize.
вот так правильно:

Code: Select all

[b]function VMProtectGetCurrentHWID(Buffer:PAnsiChar; BufferLen: Cardinal): Integer; stdcall;[/b]
...
procedure TForm1.Button1Click(Sender: TObject);
  var pBuf:PAnsiChar;
  nSize:Integer;
begin
  nSize:=VMProtectGetCurrentHWID(nil,0);
  GetMem(pBuf,nSize);
  try
    VMProtectGetCurrentHWID(pBuf,nSize); //<<<<<<<<
    Memo1.Lines.Add(pBuf);
  finally
    FreeMem(pBuf);
  end;
end;
сорри что поднял старую тему :)
Admin
Site Admin
Posts: 2586
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtectGetCurrentHWID

Post by Admin »

не все, размер буфера у него равен 0, а должен быть nSize.
Просмотрел :))
Post Reply