![]() |
|
عن المسالك Thread ودلفي 2010 و XE5 - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : عن المسالك Thread ودلفي 2010 و XE5 (/showthread.php?tid=6201) |
عن المسالك Thread ودلفي 2010 و XE5 - أبو محمد اللحياني - 21-05-2014 كان هذا الكود يعمل في delphi 2012 كود : procedure FastThread (const proc: TProc; bWait: boolean = false);
function Thread(const proc: TProc): THandle;
function run(const proc: TProc): integer; stdcall;
begin
proc;
Result := 0;
end;
begin
try
CreateThread(nil, 0, @run, PPointer(@proc)^, 0, Result);
except
end;
end;
var
hThrd: THandle;
begin
hThrd := CreateEvent(nil, true, false, nil);
Try
Thread( procedure begin proc; SetEvent(hThrd); end);
if bWait then
WaitForSingleObject(hThrd, INFINITE);
finally
CloseHandle(hThrd);
end;
end;والآن لا يعمل في delphi XE5 كان مريّح كثير عن المسالك Thread ودلفي 2010 و XE5 - محمد عبد العزيز - 21-05-2014 إقتباس :والآن لا يعمل في delphi xe5أوضح ما المشكل ؟ رسالة الخطأ ؟ عن المسالك Thread ودلفي 2010 و XE5 - أبو محمد اللحياني - 21-05-2014 الخطأ هنا : كود : CreateThread(nil, 0, @run, PPointer(@proc)^, 0, Result);رسالة الخطأ : كود : Types of actual and formal var parameters must br identicalأنا حاولت ولكن لا خبرة لي بدهاليز المؤشرات والمسالك وحاولت استخدام بدل CreateThread ::: beginThread ولكن البرامترات تختلف ووتخطيط الإجراء يتغير بالكامل عن المسالك Thread ودلفي 2010 و XE5 - SMP3 - 22-05-2014 غير هذا السطر : كود : function Thread(const proc: TProc): THandle;الى : كود : function Thread(const proc: TProc): [color=Red]DWORD[/color];عن المسالك Thread ودلفي 2010 و XE5 - أبو محمد اللحياني - 22-05-2014 ما شاء الله بهذه البساطة جزاكم الله خيراً وبارك فيكم |