![]() |
|
طريقة نسخ مجلد باستعمال brogressbar - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : طريقة نسخ مجلد باستعمال brogressbar (/showthread.php?tid=3129) |
طريقة نسخ مجلد باستعمال brogressbar - وليد - 28-05-2011 السلام عليكم استفدت من الأمثلة التي في المشروع المرفق مع مجلة دلفي للعرب العدد الرابع وخاصة في نسخ الملفات باستعمال progressbar لكن لم أستطع أن أطبق الأمر مع المجدلدات أي باستعمال brogressbar عند نسخ مجلد فهل يمكن لأحد أن يساعدني في بيان كيفية ذلك. علما أن الإشكالية كما قلت هي في ربط اشتغال progressbar مع عملية نسخ المجلدات وليست في عملية النسخ بحد ذاتها . وفق الله الجميع. طريقة نسخ مجلد باستعمال brogressbar - kachwahed - 28-05-2011 وعليكم السلام ورحمة الله أرفق محاولتك. طريقة نسخ مجلد باستعمال brogressbar - وليد - 29-05-2011 السلام عليكم المعذرة على التأخر أخي kachwahed والمثال في المرفقات وفيه فقط عملية نسخ المجلد وفق الله الجميع. طريقة نسخ مجلد باستعمال brogressbar - kachwahed - 29-05-2011 إقتباس :والمثال في المرفقاتأي مرفقات! تقصد مثال المجلة؟ وأين محاولتك ![]() جرب وحاول ولو خطأ طريقة نسخ مجلد باستعمال brogressbar - وليد - 29-05-2011 السلام عليكم المعذرة مرة ثانية أخي kachwahed لا أدري كيف لم يظهر المرفق رغم أنني قمت بتحميله وطلب مني إغلاق نافذة تحميل المرفق بعد تحميله ولهذا لم أنتبه عليه المهم المثال في المرفقات بعد إعادة تحميله. وفق الله الجميع. طريقة نسخ مجلد باستعمال brogressbar - kachwahed - 29-05-2011 وعليكم السلام التابع SHFileOperation للأسف لا يقبل CallBack تابع CallBack هو تابع/إجراء يتم إرساله إلى تابع (كمَعلَم) آخر للقيام بهمة محددة (في مثالنا مشاهدة تقدم العملية) للمزيد انظر: كود : http://delphi.about.com/od/windowsshellapi/a/callback_delphi.htmإذن، لا يوجد حل! كلا، بل هناك حلول... لكنها تتطلب مبرمج متمرس ومتمكن من API يمكنك محاكاة عمل CallBack بنفسك من خلال رسائل Windows، مثال يوضح المبدأ بـ C PHP كود : (btw there I have got a real problem with SHFileOperation - if FOF_SIMPLEPROGRESS flag is set and shos.lpszProgressTitle is not empty, SHFileOperation causes an error in kernel32.dll - tested under WinXP)كود : If a copy callback handler is exposed and registered, SHFileOperation calls it unless you set a flag such as FOF_NOCONFIRMATION in the fFlags member of the structure pointed to by lpFileOp. See ICopyHook::CopyCallback for details on implementing copy callback handlers.كود : http://msdn.microsoft.com/en-us/library/bb762164%28v=vs.85%29.aspxكود : http://msdn.microsoft.com/en-us/library/bb776048%28v=vs.85%29.aspxPHP كود : unit CopyHookImpl; كلمات مفتاحية للبحث ICopyHook ShFileOperation CallBack احتمال وارد للحل باستخدام CopyHook كما يؤكد Madshi، جرب مكتبته: كود : http://help.madshi.net/ApiCodeHooking.htmبالتوفيق. طريقة نسخ مجلد باستعمال brogressbar - وليد - 30-05-2011 جزاك الله خيرا أخي kachwahed على هذه المجهودات وجعلها الله في ميزان حسناتك سأجرب وأحاول حتى أجد حل ملائما الأهم أنك أعطيتني مفتاح بداية للبحث عن الحل. |