Select the product you need help with
Cara membuat 32-bit impor perpustakaan tanpa.OBJs atau sumberID Artikel: 131313 Pada Halaman iniRINGKASANArtikel ini menjelaskan cara membuat perpustakaan impor yang diberikan.DLL untuk
yang Anda telah ada sumber kode atau objek modul. Ada tidak ada utilitas 32-bit
yang dapat membuat sebuah perpustakaan impor dari.DLL, ada adalah dengan 16-bit
versi Visual C++. CATATAN: Metode ini mungkin tidak bekerja dengan dll yang dihasilkan dengan alat-alat non-Microsoft pengembangan. INFORMASI LEBIH LANJUTBiasanya, ketika membangun.DLL atau sasaran yang ekspor fungsi atau data
item, impor perpustakaan (dan ekspor file) yang dihasilkan sebagai bagian dari
menghubungkan proses. Tetapi dalam kasus pihak ketiga.DLL yang tidak kapal
dengan perpustakaan impor, Anda mungkin perlu untuk menghasilkan impor perpustakaan dalam rangka
untuk menggunakan.DLL yang berhasil menggunakan waktu buka dinamis menghubungkan. Impor
Perpustakaan tidak diperlukan untuk menghubungkan dinamis run-time. Ada dua cara untuk membuat sebuah perpustakaan impor yang diberikan.DLL:
Menciptakan.DEF fileSatu-satunya waktu yang dapat Anda gunakan.DEF file untuk menciptakan perpustakaan impor dari .DLL yang Anda tidak memiliki sumber kode atau objek modul adalah jika .DLL ekspor fungsi melalui antarmuka C. Secara khusus, kebutuhan fungsi untuk dinyatakan untuk menggunakan konvensi panggilan C. Ini ditentukan oleh atribut _cdecl, biasanya digunakan dalam prototipe untuk fungsi. Catatan Jika atribut tidak ditentukan, _cdecl yang default ketika /Gz (_stdcall adalah default) atau /Gr (_fastcall adalah default) tidak ditentukan pada CL baris perintah. Alasan untuk pembatasan ini didasarkan pada asumsi dibuat oleh utilitas LIB semua nama yang diekspor secara otomatis tanpa terkemuka garis bawah. Hal ini hanya berlaku untuk nama-nama fungsi _cdecl.Diberikan.DLL dengan fungsi yang diekspor melalui antarmuka C, Anda dapat membuat Impor perpustakaan dengan mengikuti langkah-langkah berikut:
Stubbing fungsiUntuk diekspor fungsi yang menggunakan konvensi panggilan selain C, situasi ini sedikit lebih rumit. Hal ini terutama benar ketika Anda Pertimbangkan fungsi C++ dan skema dekorasi nama lebih kompleks terlibat. Untuk menggunakan metode ini, Anda setidaknya harus memiliki header file yang menjelaskan.Antarmuka DLL.Untuk membuat fungsi stubbed dari prototipe dalam header file:
ContohJika header file yang menggambarkan MYDLL.DLL terlihat seperti:CL/c /Ob0 mydll.CPP Catatan: Menonaktifkan fungsi inlining diperlukan untuk memaksa generasi
simbol untuk fungsi-fungsi yang didefinisikan dalam CMyClass. Jika fungsi inlining
diaktifkan, Kompilator akan melihat bahwa ada tidak ada referensi untuk
fungsi anggota dalam terjemahan unit, sehingga akan membuang fungsi
tubuh. Lihat diskusi di inline fungsi ekspansi di bawah optimasi
dalam Visual C++ CL perintah baris referensi.Setelah Anda memiliki.OBJ file, Anda dapat menggunakan LIB /DEF: untuk menciptakan impor perpustakaan (.LIB) dan ekspor file (.EXP): LIB /DEF: mydll.OBJ Untuk informasi lebih lanjut tentang perintah LIB, baca "Referensi LIB" di
Visual C++ buku secara Online.Lihat juga artikel berikut pada Basis Pengetahuan Microsoft: 140485
(http://support.microsoft.com/kb/140485/EN-US/
)
Mengekspor PASCAL-seperti simbol di 32-bit dllPropertiID Artikel: 131313 - Kajian Terakhir: 14 September 2011 - Revisi: 2.0
Penerjemahan Mesin PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah. Klik disini untuk melihat versi Inggris dari artikel ini:131313
(http://support.microsoft.com/kb/131313/en-us/
)
| Terjemahan Artikel |





Kembali ke atas








