|
Shaxsiy kompyuter komponentlarining umumiy sxemasi, xususiyatlari va tahlili
|
bet | 63/78 | Sana | 19.02.2024 | Hajmi | 209,36 Kb. | | #158808 |
Bog'liq Tizimli dasturlash javoblar
Yilda
Visual Basic
(VB), faqat ish vaqti bilan bog'lanish qo'llab-quvvatlanadi; lekin foydalanishdan tashqari LoadLibrary va GetProcAddress API
funktsiyalari, deklaratsiyalar import qilingan funktsiyalarga ruxsat beriladi.
DLL funktsiyalarini deklaratsiyalar orqali import qilishda, VB ish vaqtida xatolikka yo'l qo'yadi DLL fayl topilmadi. Ishlab chiquvchi xatoni aniqlay oladi va unga mos ravishda ishlov berishi mumkin.
VB-da DLL yaratishda IDE faqat ActiveX DLL-larini yaratishga imkon beradi, ammo usullar yaratilgan
[7]
foydalanuvchiga bog'lovchiga har bir eksport qilingan funktsiyalarning
tartib holatini va nomini belgilaydigan .DEF faylini qo'shishni aniq aytishiga imkon berish. Bu foydalanuvchiga Visual Basic (Versiya 6 yoki undan past) yordamida standart Windows DLL-ni yaratishga imkon beradi, unga "Deklaratsiya" bayonoti orqali murojaat qilish mumkin.
C va C ++
77
Microsoft
Visual C ++
(MSVC) standartga muvofiq bir nechta kengaytmalarni taqdim etadi C
++
funktsiyalarni to'g'ridan-to'g'ri C ++ kodida import qilingan yoki eksport qilingan deb belgilashga imkon beradigan; ular boshqa Windows tomonidan qabul qilingan
C
va C ++
kompilyatorlari, shu jumladan Windows versiyalari GCC
. Ushbu kengaytmalar atributdan
foydalanadi declspec funktsiya deklaratsiyasidan oldin. Shuni esda tutingki, C funktsiyalariga C ++ dan murojaat qilinganda ular ham e'lon qilinishi kerak tashqi "C" C ++
kodida, kompilyatorga C havolasidan foydalanish kerakligi to'g'risida xabar berish uchun. [8]
Import qilingan yoki eksport qilingan funktsiyalarni ishlatishdan
tashqari declspec atributlari, ular IMPORT yoki EXPORTS bo'limida keltirilgan bo'lishi mumkin
DEF
loyiha tomonidan foydalaniladigan fayl. The DEF fayl kompilyator tomonidan
emas, balki bog'lovchi tomonidan qayta ishlanadi va shuning uchun u C ++ uchun xos emas. DLL kompilyatsiyasi ikkalasini ham ishlab chiqaradi DLL va LIB fayllar. The LIB fayl (import kutubxonasi) kompilyatsiya vaqtida DLL bilan bog'lanish uchun ishlatiladi; bu ish vaqtini bog'lash uchun kerak emas. Agar DLL a
Komponent ob'ekti modeli
(MAQOMOTI)
server, DLL fayl PATH muhit o'zgaruvchisida ko'rsatilgan kataloglardan biriga, standart tizim katalogiga yoki undan foydalanadigan dastur bilan bir xil katalogga joylashtirilishi kerak. MAQOMOTI server DLL-lari regsvr32.exe yordamida ro'yxatdan o'tkaziladi, bu DLL-ning joylashuvi va uning global identifikatorini joylashtiradi (
GUID
) ro'yxatga olish
kitobida. Keyin dasturlar DLL-dan GUID-ni qidirib topishlari mumkin ro'yxatga olish
kitobi
uning joylashuvini topish yoki o'z sinf identifikatori va interfeys identifikatoridan foydalangan holda bilvosita MAQOMOTI ob'ektining nusxasini yaratish.
|
| |