



نظرة عامة
تأتي أدوات الترجمة بشكل عام مع وظيفة تجميع ملفات المكتبة وتوليدها ، والأداة المستخدمة من قبل VS لإنشاء مكتبات ثابتة هي Ebuilder.
خطوة
1. كود تنفيذ مكتبة ثابتة
اكتب أولاً برنامج c ، بما في ذلك ملف الرأس h وملف c:
des.h:
#ifndef DES_H #define DES_H #include <Stdio.h> #include <String.h> //B.DES/3DES عينة كود التشفير int PubEncrypt_DbqCheckNum(const char *str); // C.DES / 3DES عينة كود فك التشفير int PubDecrypt_DbqCheckNum(const char *str); // احصل على إصدار برنامج المكتبة الديناميكي void PubGetDbqCheckNumVersion(unsigned char* data_out); #endif
des.c:
#include "des.h" #define CHECKNUM_VERSION "LIB_DBQ20180321" void PubGetDbqCheckNumVersion(unsigned char* data_out) { strcpy(data_out, CHECKNUM_VERSION); } int PubEncrypt_DbqCheckNum(const char *str){ return 0; } int PubDecrypt_DbqCheckNum(const char *str){ return 0; }
2. استخدم EBuilder لإنشاء مكتبة ثابتة. أ وملفها .lib
الخطوات:
1. حدد Make * bin / * .a / * lib file؛
2. حدد مكتبة ثابتة ؛
3. انقر فوق "+" وحدد ملف .c المراد تجميعه ؛
4. الدليل الذي يعتمد فيه ملف المكتبة على كود المصدر المترجم. يتم استيراد String.h و Stdio.h إلى des.h. مطلوب مسار هذه الملفات وملفات .c المقابلة لها استيراد (أنا هنا "C: \ PaxPayPro2014 \ lib" و "C: \ PaxPayPro2014 \ include" على التوالي) ؛
5. اسم المكتبة الثابتة الناتجة عن التجميع ؛
6. مسار إخراج الملفات التي تم إنشاؤها بواسطة التجميع ؛
7. بعد اكتمال الإعدادات أعلاه ، يمكنك النقر فوق Builder لإنشاء مكتبة ثابتة.
المشروع المُنشأ:
3. استخدام المكتبات الثابتة في المشروع
ملف .lib ، baifu.lib
ملف .h ، des.h
استخدم في كود المشروع:
PubGetDbqCheckNumVersion(buf); disp_string(buf,2,MIDDLE,0,1);
مشروع-> إعادة بناء الكل ، أدخل الصورة أدناه
بعد الإعدادانقر فوق الزر إنشاءأكمل التجميع.
الخطوة التالية هي تنزيل البرنامج وتشغيله (تم حذف الخطوات) ، أقوم بتشغيله على نقطة البيع ،نتيجةعلى النحو التالي:
لنلخص
تأتي أدوات الترجمة بشكل عام مع وظيفة تجميع ملفات المكتبة وتوليدها ، والأداة المستخدمة من قبل VS لإنشاء مكتبات ثابتة هي Ebuilder.
خطوة
1. كود تنفيذ مكتبة ثابتة
اكتب أولاً برنامج c ، بما في ذلك ملف الرأس h وملف c:
des.h:
#ifndef DES_H #define DES_H #include <Stdio.h> #include <String.h> //B.DES/3DES عينة كود التشفير int PubEncrypt_DbqCheckNum(const char *str); // C.DES / 3DES عينة كود فك التشفير int PubDecrypt_DbqCheckNum(const char *str); // احصل على إصدار برنامج المكتبة الديناميكي void PubGetDbqCheckNumVersion(unsigned char* data_out); #endif
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
des.c:
#include "des.h" #define CHECKNUM_VERSION "LIB_DBQ20180321" void PubGetDbqCheckNumVersion(unsigned char* data_out) { strcpy(data_out, CHECKNUM_VERSION); } int PubEncrypt_DbqCheckNum(const char *str){ return 0; } int PubDecrypt_DbqCheckNum(const char *str){ return 0; }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
2. استخدم EBuilder لإنشاء مكتبة ثابتة. أ وملفها .lib

الخطوات:
1. حدد Make * bin / * .a / * lib file؛
2. حدد مكتبة ثابتة ؛
3. انقر فوق "+" وحدد ملف .c المراد تجميعه ؛
4. الدليل الذي يعتمد فيه ملف المكتبة على كود المصدر المترجم. يتم استيراد String.h و Stdio.h إلى des.h. مطلوب مسار هذه الملفات وملفات .c المقابلة لها استيراد (أنا هنا "C: \ PaxPayPro2014 \ lib" و "C: \ PaxPayPro2014 \ include" على التوالي) ؛
5. اسم المكتبة الثابتة الناتجة عن التجميع ؛
6. مسار إخراج الملفات التي تم إنشاؤها بواسطة التجميع ؛
7. بعد اكتمال الإعدادات أعلاه ، يمكنك النقر فوق Builder لإنشاء مكتبة ثابتة.
المشروع المُنشأ:

3. استخدام المكتبات الثابتة في المشروع
- قم أولاً باستيراد ملف .h وملف .lib:
·
ملف .lib ، baifu.lib

ملف .h ، des.h

استخدم في كود المشروع:
PubGetDbqCheckNumVersion(buf); disp_string(buf,2,MIDDLE,0,1);
- 1
- 2
- ثم قم بإنشاء:
- ترجمة + تنفيذ:
انقر فوق الزر الموجود في الدائرة الحمراء:

مشروع-> إعادة بناء الكل ، أدخل الصورة أدناه

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