![]() |
|
|
|
|
#1
|
|||
|
|||
|
Есть некая функция вот как она выглядит
Код:
function tt(parameter: pointer): ptrint; begin SetTimer(Form1.Handle,1,100,@tp); end; выдает ошибку [dcc32 Error] Unit1.pas(36): E2003 Undeclared identifier: 'ptrint' как идентифицировать параметр ptrint или чем заменить? |
|
#2
|
||||
|
||||
|
Поскольку
Цитата:
Код:
type
{$ifdef CPUX86_64}
tt = function (parameter: pointer): ptrint;
{$else}
tt = function (parameter: pointer): integer;
{$endif CPUX86_64} |
|
#3
|
|||
|
|||
|
так правильно будет?:
Код:
unit Unit1;
interface
uses windows,
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var tid: TThreadID;
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure tp(hWnd: HWND; uMsg: UINT; idEvent: UINT_PTR; dwTime: DWORD);
stdcall;
begin
form1.ListBox1.Items.Append('11');
end;
procedure tt;
begin
SetTimer(Form1.Handle,1,100,@tp);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
BeginThread(nil,0,@tt,nil,0,tid);
end;
end.
|
|
#4
|
||||
|
||||
|
Чем же правильно, - здесь показана такая галиматья, есть куча пустых параметров, просматривается денатуратная подмена для стандартных компонентов типа TTimer, нафига?
|
|
#5
|
|||
|
|||
|
Цитата:
|
|
#6
|
||||
|
||||
|
Под D7 работает вот такое
Код:
var
tid: Cardinal;
procedure tp(hWnd: HWND; uMsg, idEvent: UINT; dwTime: DWORD); stdcall;
begin
form1.ListBox1.Items.Append('11');
end;
procedure tt;
begin
SetTimer(Form1.Handle,1,100,@tp);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
BeginThread(nil,0,@tt,nil,0,tid);
end; |