نصائح

تنفيذ وتشغيل التطبيقات والملفات من قانون دلفي

تنفيذ وتشغيل التطبيقات والملفات من قانون دلفي

توفر لغة برمجة Delphi طريقة سريعة لكتابة التطبيقات عبر الأنظمة الأساسية وتجميعها وحزمها ونشرها. على الرغم من قيام Delphi بإنشاء واجهة مستخدم رسومية ، إلا أنه لا بد أن تكون هناك أوقات تريد فيها تنفيذ برنامج من كود Delphi الخاص بك. لنفترض أن لديك تطبيق قاعدة بيانات يستخدم أداة نسخ احتياطي خارجية. تأخذ أداة النسخ الاحتياطي معلمات من التطبيق وتقوم بحفظ البيانات ، بينما ينتظر البرنامج حتى انتهاء النسخ الاحتياطي.

ربما ترغب في فتح المستندات المقدمة في مربع قائمة الملفات فقط بالنقر المزدوج عليها دون فتح البرنامج المرتبط أولاً. تخيل تسمية رابط في البرنامج تنقل المستخدم إلى صفحتك الرئيسية. ما رأيك في إرسال بريد إلكتروني مباشرة من تطبيق دلفي الخاص بك من خلال برنامج عميل البريد الإلكتروني الافتراضي في Windows؟

ShellExecute

لتشغيل تطبيق أو تنفيذ ملف في بيئة Win32 ، استخدم وظيفة ShellExecute Windows API. راجع التعليمات على ShellExecute للحصول على وصف كامل للمعلمات ورموز الخطأ التي تم إرجاعها. يمكنك فتح أي مستند دون معرفة البرنامج المرتبط به - يتم تعريف الارتباط في سجل Windows.

وهنا بعض الأمثلة قذيفة.

تشغيل المفكرة

يستخدم ShellApi.

ShellExecute (مقبض ، "فتح" ،
'c: Windows notepad.exe' ، لا شيء ، لا شيء ، SW_SHOWNORMAL) ؛

افتح SomeText.txt مع المفكرة

ShellExecute (مقبض 'فتح'،
'C: WINDOWS NOTEPAD.EXE،
'c: SomeText.txt'، nil، SW_SHOWNORMAL)؛

عرض محتويات مجلد "DelphiDownload"

ShellExecute (مقبض 'فتح'،
'c: DelphiDownload'، nil، nil، SW_SHOWNORMAL)؛

تنفيذ ملف وفقا لامتداده

ShellExecute (مقبض ، "فتح" ،
'c: MyDocuments Letter.doc'، nil، nil، SW_SHOWNORMAL)؛

إليك كيفية العثور على تطبيق مرتبط بامتداد.

افتح موقع ويب أو ملف * .htm باستخدام مستكشف الويب الافتراضي

ShellExecute (مقبض ، "فتح" ،
'//delphi.about.com'، nil، nil، SW_SHOWNORMAL)؛

إرسال بريد إلكتروني مع الموضوع ونص الرسالة

var em_subject، em_body، em_mail: string؛
ابدأ
em_subject: = 'هذا هو سطر الموضوع' ؛
em_body: = 'نص نص الرسالة يذهب هنا' ؛
em_mail: = 'mailto: [email protected]؟ topic =' +
em_subject + '& body =' + em_body؛
ShellExecute (مقبض 'فتح'،
PChar (em_mail) ، لا شيء ، لا شيء ، SW_SHOWNORMAL) ؛
النهاية؛

إليك كيفية إرسال بريد إلكتروني مع المرفق.

تنفيذ برنامج وانتظر حتى ينتهي

يستخدم المثال التالي وظيفة API ShellExecuteEx.

/ / قم بتنفيذ حاسبة Windows و انبثق
// رسالة عند إنهاء الحساب.
يستخدم ShellApi.

فار
SEInfo: TShellExecuteInfo؛
ExitCode: DWORD؛
ExecuteFile ، ParamString ، StartInString: string؛
ابدأ
ExecuteFile: = 'C: WINDOWS calc.exe تصبح'؛
FillChar (SEInfo ، SizeOf (SEInfo) ، 0) ؛
SEInfo.cbSize: = SizeOf (TShellExecuteInfo) ؛
مع SEInfo لا تبدأ
fMask: = SEE_MASK_NOCLOSEPROCESS؛
Wnd: = Application.Handle؛
lpFile: = PChar (ExecuteFile) ؛
{
ParamString يمكن أن تحتوي على
معلمات التطبيق.
}
// lpParameters: = PChar (ParamString)؛
{
تحدد StartInString
اسم دليل العمل.
إذا ommited ، يتم استخدام الدليل الحالي.
}
// lpDirectory: = PChar (StartInString)؛
nShow: = SW_SHOWNORMAL؛
النهاية؛
إذا ShellExecuteEx (SEInfo) ثم تبدأ
كرر
Application.ProcessMessages.
GetExitCodeProcess (SEInfo.hProcess ، ExitCode) ؛
حتى (ExitCode STILL_ACTIVE) أو
Application.Terminated.
ShowMessage ('إنهاء الحاسبة') ؛
النهاية
else ShowMessage ('خطأ في بدء حساب!') ؛
النهاية؛


شاهد الفيديو: تطبيق Torque المدفوع لصيانة السيارات وكشف الأعطال بثواني (يونيو 2021).