Olá,
Estou dando uma estudada no BeginThread e tenho esse código.. var Enough :Boolean = false; function MyThreadProc(Parameter: Pointer): Integer; begin while not Enough do begin Windows.Beep(1000, 1000); Sleep( DWORD( Parameter ) ); end; result := 1; end; procedure TForm1.SomeMethod; var ThreadId :DWORD; hThread :THandle; a: Pointer; begin hThread := BeginThread( NIL, 0, @MyThreadProc, 5000, 0, ThreadId ); Sleep( 60000 ); Enough := true; WaitForSingleObject( hThread, INFINITE ); CloseHandle( hThread ); end; Assim como em outros exemplos que achei no Google, note que na função BeginThread é passado o ponteiro de MyThreadProc. Notei em todos outros exemplos são utilizados da mesma forma. E as pessoas dizem que está funcionando. Porém quando tento utilizar essa função passando um ponteiro de um método que contém parâmetros ocorre o seguinte erro de compilação Variable Required Alguém que já teve experiência com esse tipo de situação poderia dar uma dica? [As partes desta mensagem que não continham texto foram removidas]