كيفية تطبيق وظيفة رد الاتصال SQL Server 2000 Desktop Engine و المثال

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

315463
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الموجز
هذه المقالة تتناول هذه المقالة كيفية تنفيذ وظيفة رد اتصال أثناء التثبيت SQL Server 2000 Desktop Engine (MSDE 2000) وتتناول أيضاً كافة الشروط التي يجب أن تتحقق للتأكد من تشغيل وظيفة رد الاتصال بشكل صحيح.

SQL Server 2000 Desktop Engine (MSDE 2000) إصدار القابل لإعادة التوزيع من مشغل قاعدة بيانات علائقية في Microsoft SQL Server 2000. ويسمح تطبيق يستخدم مشغل قاعدة بيانات علائقية SQL Server إلى تثبيت المشغّل كجزء من عملية الإعداد التطبيق.

يسمح حزمة تثبيت MSDE 2000 استخدام وظيفة رد اتصال لتعقب تقدم أو لتنفيذ إجراءات مخصصة أثناء الإعداد.

back to the top

شروط استخدام وظيفة رد الاتصال

وظيفة رد الاتصال لتشغيل عادةً يجب تحقيق الشروط التالية:
  • يجب أن تقوم بتنفيذ وظيفة رد الاتصال كـ Windows Installer مخصص إجراء نوع 1 الديناميكي المرتبطة مكتبة (DLL). على سبيل المثال، يمكنك استخدام Visual C++ الموسّع مخزنة إجراء معالج Microsoft لإنشاء رد اتصال DLL.

    للحصول على مزيد من المعلومات حول أنواع مكتبة مثبت Windows قم بزيارة موقع شبكة مطوري Microsoft (MSDN) التالي على الويب:
  • يجب أن يتواجد وظيفة رد الاتصال في أي من المجلدات التالية:
    • المجلد الذي يتم إرجاعه بواسطة استدعاء Win32 GetTempPath.
    • المجلد "Product code" الموجودة في المجلد الذي يتم إرجاعه بواسطة استدعاء Win32 GetTempPath.

      ملاحظةProduct code هو عنصر نائب رمز المنتج المثيل MSDE 2000 المثبتة على جهاز الكمبيوتر الخاص بك.
    بشكل عام، المجلد الذي يتم إرجاعه بواسطة Win32 GetTempPath يتم استدعاء متغير البيئة % TMP. في حالة عدم توفر متغير البيئة % TMP % وهو متغير البيئة % TEMP %.

    للحصول على مزيد من المعلومات حول دالة Win32 GetTempPath قم بزيارة موقع شبكة مطوري Microsoft (MSDN) التالي على الويب:
  • يجب أن وظيفة رد الاتصال Desktop Engine تستغرق معلمة UINT إضافية تحتوي على رمز إنهاء Desktop Engine أو رمز الإرجاع. يشبه تعريف وظيفة رد الاتصال
    UINT __stdcall MyCallbackFunction(MSIHANDLE hinstall, UINT uExitCode)						
    حيث uExitCode يحتوي على برنامج الإعداد Desktop Engine بإنهاء رمز أو رمز الإرجاع.

back to the top

خطوات نموذج والرمز تنفذ وظيفة رد الاتصال

تصف الخطوات التالية تنفيذ وظيفة رد الاتصال نموذج باستخدام Microsoft Visual Studio 6.0.

  1. في Microsoft Visual C++ 6.0 IDE ، انقر فوق ملف ، ثم انقر فوق جديد. ضمن علامة التبويب "المشاريع" ، انقر فوق المعالج "الموسّع إجراء مخزن".
  2. تحديد اسم مشروع. على سبيل المثال، MyCallback. يمكنك أيضاً تحديد الموقع الذي تريد إنشاء المشروع. انقر فوق موافق.
  3. تحديد اسم وظيفة رد الاتصال. على سبيل المثال، MyCallbackFunction. لاحظ أن المثال يستخدم المعالج "الموسّع إجراء مخزَّن" لإنشاء رد اتصال DLL. توصي المعالج تحديد اسم يبدأ بـ "XP_". ومع ذلك، يمكن تجاهل التوصية وحدد اسم الدالة رد الاتصال من اختيارك. انقر فوق إنهاء.
  4. هذا ينشئ الفئات والملفات cpp المطلوبة. في جزء "مساحة العمل" ، ستشاهد مساحة العمل لهذا المشروع. حدد ClassView ثم قم بتوسيع مجلد عمومي في شجرة فئات MyCallback. تتمكن من رؤية تعريف الدالة MyCallbackFunction.

    نموذج التعليمة البرمجية الخاصة بدالة رد الاتصال في عنوان نموذج لتعليمة برمجية التالية. يمكنك اختبار المشروع بواسطة نسخ التعليمات البرمجية التالية إلى الدالة MyCallbackFunction.

    رمز نموذج

    #include <stdafx.h>#define XP_NOERROR 0#define XP_ERROR 1#define MAXCOLNAME 25#define MAXNAME 25#define MAXTEXT 255#ifdef __cplusplusextern "C" {#endifUINT __declspec(dllexport) MyCallbackFunction(HANDLE hinstall, UINT uExitCode);#ifdef __cplusplus}#endifUINT __declspec(dllexport) MyCallbackFunction(HANDLE hinstall, UINT uExitCode){     TCHAR buffer[1024];     wsprintf(buffer, TEXT("**Callback** Return code is %d"), uExitCode);     MessageBox(NULL, buffer, TEXT("MyCallbackFunction Dialog"), MB_OK);     return 0;}					
    عرض هذه العينة وظيفة رد الاتصال مربع رسالة مع هذا النص على كل استدعاء:
    **Callback** Return code is 0					
  5. إنشاء ملف MyCallback.dll باستخدام القائمة بنية. DLL إنشاؤها وحفظها إلى مجلد فرعي مسمى Debug, في نفس الموقع الذي حددته في الخطوة 2.
  6. بعد أن يتم إنشاء DLL يجب نسخ DLL إلى موقع الذي يعتمد على إصدار MSDE 2000 المثبتة على جهاز الكمبيوتر الخاص بك.
    • إذا كنت تستخدم Microsoft SQL Server 2000 Desktop Engine SP2 ، يجب نسخ DLL إلى الموقع الذي تم تعريفه بواسطة أحد متغيرات البيئة التالية:
      • % TMP %
      • % TEMP %.
      للحصول على البيئة قيم المتغيرات على كمبيوتر محدد للمستخدم الذي تم تسجيل دخوله ، اكتب الأمر التالي في موجه الأوامر:
      SET
      يعرض هذا الأمر كافة متغيرات البيئة بما في ذلك TMPTEMP.
    • إذا كنت تستخدم Microsoft SQL Server 2000 Desktop Engine SP3a ، يجب نسخ DLL إلى أحد المواقع التالية:
      • %TMP%\ {Product code}
      • %TEMP%\ {Product code}
      ملاحظة{Product code} عنصرًا نائبًا رمز المنتج المثيل MSDE 2000 المثبتة على جهاز الكمبيوتر الخاص بك.

      على سبيل المثال، إذا كان مثيل MSDE 2000 على رمز منتج E09B48B5-E141-427A-AB0C-D3605127224A ، يجب نسخ DLL إلى % TMP%\{E09B48B5-E141-427A-AB0C-D3605127224A} أو % TEMP%\{E09B48B5-E141-427A-AB0C-D3605127224A} المجلد.
  7. استخدم الخيار رد الاتصال مثبت Windows Desktop Engine استدعاء وظيفة رد الاتصال أثناء الإعداد. على سبيل المثال:
    CALLBACK=Dllname!CallbackFunctionName
    على سبيل المثال هذه بناء الجملة:
    setup.exe /L*v c:\msde_setup.log CALLBACK=MyCallback!MyCallbackFunction					

back to the top
مراجع
للحصول على معلومات إضافية، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف لـ Microsoft:
299795كيفية الحزم الإعداد كاتب MSDE 2000 مع Microsoft Visual Studio Installer 1.1


SDK مثبت Windows جزء من Microsoft Platform مجموعة من تطوير البرامج (SDK). لمزيد من المعلومات حول Platform SDK قم بزيارة موقع Microsoft التالي على الويب:كتب SQL Server 2000 الفورية; مواضيع: "إنشاء تطبيقات خادم SQL"; "توزيع SQL تطبيقات خادم"; "توزيع SQL مع تطبيقات خادم"; "سطح المكتب مشغّل Windows Installer إرجاع رموز"; "سطح المكتب مشغّل Windows Installer استدعاء وظائف"
back to the top
MSDE رد الاتصال الدالة uExitCode kbAudDeveloper kbSQLServ2000Search kbZNotKeyword5 kbSQLServSearch

تحذير: تمت ترجمة هذا المقال تلقائياً

خصائص

رقم الموضوع: 315463 - آخر مراجعة: 02/11/2014 09:28:54 - المراجعة: 3.0

  • Microsoft SQL Server 2000 Desktop Engine (MSDE) SP3a
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • kbnosurvey kbarchive kbmt kbhowtomaster KB315463 KbMtar
تعليقات