EnglishFrenchSpanish

Jalankan server | Ubuntu > | Fedora > |


favorit OnWorks

i686-w64-mingw32-dlltool - Online di Cloud

Jalankan i686-w64-mingw32-dlltool di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

Ini adalah perintah i686-w64-mingw32-dlltool yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


dlltool - Buat file yang diperlukan untuk membangun dan menggunakan DLL.

RINGKASAN


dlltool [-d|--input-def def-nama-file]
[-b|--base-file nama-file-dasar]
[-e|--keluaran-exp ekspor-file-name]
[-z|--output-def def-nama-file]
[-l|--output-lib perpustakaan-file-nama]
[-y|--output-delaylib perpustakaan-file-nama]
[--ekspor-semua-simbol] [--no-ekspor-semua-simbol]
[--kecuali-simbol daftar]
[--no-default-excludes]
[-S|--sebagai jalan-ke-assembler] [-f|--sebagai-bendera Pilihan]
[-D|--dllname nama] [-m|--mesin mesin]
[-a|--tambahkan-tidak langsung]
[-U|--tambahkan-garis bawah] [--tambahkan-stdcall-garis bawah]
[-k|--bunuh-at] [-A|--add-stdcall-alias]
[-p|--ext-prefix-alias awalan]
[-x|--no-idata4] [-c|--no-idata5]
[--use-nul-prefixed-import-tables]
[-I|--mengenali perpustakaan-file-nama] [--identify-strict]
[-i|--interwork]
[-n|--nodelete] [-t|--temp-awalan awalan]
[-v|--verbose]
[-h|--membantu] [-V|--Versi: kapan]
[--tidak ada garis bawah utama] [--memimpin-garis bawah]
[file-objek ...]

DESKRIPSI


dlltool membaca inputnya, yang dapat berasal dari -d serta -b pilihan serta objek
file yang ditentukan pada baris perintah. Kemudian memproses input ini dan jika -e pilihan
telah ditentukan itu membuat file ekspor. jika -l pilihan telah ditentukan itu
membuat file perpustakaan dan jika -z opsi telah ditentukan itu membuat file def. Setiap
atau semua -e, -l serta -z opsi dapat hadir dalam satu permintaan dlltool.

Saat membuat DLL, bersama dengan sumber DLL, perlu memiliki tiga:
file lainnya. dlltool dapat membantu dengan pembuatan file-file ini.

File pertama adalah .def file yang menentukan fungsi mana yang diekspor dari DLL,
yang berfungsi mengimpor DLL, dan seterusnya. Ini adalah file teks dan dapat dibuat oleh
tangan, atau dlltool dapat digunakan untuk membuatnya menggunakan -z pilihan. Pada kasus ini dlltool akan
memindai file objek yang ditentukan pada baris perintahnya mencari fungsi-fungsi yang memiliki
telah secara khusus ditandai sebagai diekspor dan memasukkan entri untuk mereka di .def arsipkan
menciptakan.

Untuk menandai suatu fungsi sebagai diekspor dari DLL, fungsi tersebut harus memiliki:
-ekspor: entri dalam .drectve bagian dari file objek. Ini bisa jadi
dilakukan di C dengan menggunakan asm() operator:

asm (".bagian .drectve");
asm (".ascii \"-ekspor:my_func\"");

int my_func (kosong) { ... }

File kedua yang diperlukan untuk pembuatan DLL adalah file ekspor. File ini ditautkan dengan
file objek yang membentuk tubuh DLL dan menangani antarmuka antara DLL
dan dunia luar. Ini adalah file biner dan dapat dibuat dengan memberikan -e
pilihan untuk dlltool ketika membuat atau membaca di a .def file.

File ketiga yang diperlukan untuk pembuatan DLL adalah file library yang akan ditautkan oleh program
untuk mengakses fungsi-fungsi dalam DLL (sebuah `import library'). File ini dapat dibuat
dengan memberikan -l opsi untuk dlltool saat membuat atau membaca di a .def file.

Jika -y opsi ditentukan, dlltool menghasilkan perpustakaan penundaan-impor yang dapat digunakan
alih-alih perpustakaan impor normal untuk memungkinkan program untuk menautkan ke dll hanya segera setelah
fungsi yang diimpor dipanggil untuk pertama kalinya. Eksekusi yang dihasilkan perlu
ditautkan ke perpustakaan delayimp statis yang berisi __delayLoadHelper2(), yang pada gilirannya
akan mengimpor LoadLibraryA dan GetProcAddress dari kernel32.

dlltool membangun file perpustakaan dengan tangan, tetapi membangun file ekspor dengan membuat
file sementara yang berisi pernyataan assembler dan kemudian merakitnya. NS -S perintah
opsi baris dapat digunakan untuk menentukan jalur ke assembler yang akan digunakan dlltool, dan
itu -f option dapat digunakan untuk meneruskan flag tertentu ke assembler itu. NS -n dapat digunakan untuk
mencegah dlltool menghapus file assembler sementara ini ketika selesai, dan jika -n
ditentukan dua kali maka ini akan mencegah dlltool menghapus file objek sementara
itu digunakan untuk membangun perpustakaan.

Berikut adalah contoh membuat DLL dari file sumber dll.c dan juga membuat program
(dari file objek bernama program.o) yang menggunakan DLL itu:

gcc -c dll.c
dlltool -e export.o -l dll.lib dll.o
gcc dll.o export.o -o dll.dll
gcc program.o dll.lib -o program

dlltool juga dapat digunakan untuk menanyakan pustaka impor yang ada untuk menentukan nama
DLL yang terkait. Lihat deskripsi -I or --mengenali pilihan.

PILIHAN


Opsi baris perintah memiliki arti sebagai berikut:

-d nama file
--input-def nama file
Menentukan nama a .def file untuk dibaca dan diproses.

-b nama file
--base-file nama file
Menentukan nama file dasar untuk dibaca dan diproses. Isinya ini
file akan ditambahkan ke bagian relokasi di file ekspor yang dihasilkan oleh dlltool.

-e nama file
--keluaran-exp nama file
Menentukan nama file ekspor yang akan dibuat oleh dlltool.

-z nama file
--output-def nama file
Menentukan nama .def file yang akan dibuat oleh dlltool.

-l nama file
--output-lib nama file
Menentukan nama file perpustakaan yang akan dibuat oleh dlltool.

-y nama file
--output-delaylib nama file
Menentukan nama file library delay-import yang akan dibuat oleh dlltool.

--ekspor-semua-simbol
Perlakukan semua simbol terdefinisi global dan lemah yang ditemukan di file objek input sebagai simbol
untuk diekspor. Ada daftar kecil simbol yang tidak diekspor secara default;
lihat --no-default-excludes pilihan. Anda dapat menambahkan ke daftar simbol untuk tidak
ekspor dengan menggunakan --kecuali-simbol pilihan.

--no-ekspor-semua-simbol
Hanya simbol ekspor yang secara eksplisit tercantum dalam input .def file atau di .drectve bagian dalam
file objek masukan. Ini adalah perilaku default. NS .drectve bagian adalah
diciptakan oleh dllexport atribut dalam kode sumber.

--kecuali-simbol daftar
Jangan mengekspor simbol di daftar. Ini adalah daftar nama simbol yang dipisahkan dengan koma
atau karakter titik dua. Nama simbol tidak boleh mengandung garis bawah di depan. Ini
hanya berarti ketika --ekspor-semua-simbol digunakan.

--no-default-excludes
Ketika --ekspor-semua-simbol digunakan, secara default akan menghindari mengekspor khusus tertentu
simbol. Daftar simbol saat ini untuk menghindari ekspor adalah DllMain@12,
DllEntryPoint@0, tidak murni_ptr. Anda dapat menggunakan --no-default-excludes pilihan untuk maju
dan ekspor simbol khusus ini. Ini hanya berarti ketika --ekspor-semua-simbol
digunakan.

-S path
--sebagai path
Menentukan jalur, termasuk nama file, assembler yang akan digunakan untuk membuat
file ekspor.

-f Pilihan
--sebagai-bendera Pilihan
Menentukan opsi baris perintah tertentu yang akan diteruskan ke assembler ketika
membangun file ekspor. Opsi ini akan berfungsi bahkan jika -S pilihan tidak digunakan.
Opsi ini hanya membutuhkan satu argumen, dan jika terjadi lebih dari sekali pada perintah
baris, maka kejadian selanjutnya akan menimpa kejadian sebelumnya. Jadi jika perlu
untuk meneruskan beberapa opsi ke assembler, mereka harus diapit dalam tanda kutip ganda.

-D nama
--dll-nama nama
Menentukan nama yang akan disimpan di .def file sebagai nama DLL ketika -e
opsi digunakan. Jika opsi ini tidak ada, maka nama file yang diberikan ke -e
pilihan akan digunakan sebagai nama DLL.

-m mesin
-mesin mesin
Menentukan jenis mesin yang file perpustakaan harus dibangun. dlltool memiliki
tipe bawaan bawaan, tergantung pada cara pembuatannya, tetapi opsi ini dapat
digunakan untuk menimpa itu. Ini biasanya hanya berguna saat membuat DLL untuk ARM
prosesor, ketika isi DLL sebenarnya dikodekan menggunakan instruksi Thumb.

-a
--tambahkan-tidak langsung
Menentukan bahwa ketika dlltool sedang membuat file ekspor, itu harus menambahkan bagian yang
memungkinkan fungsi yang diekspor untuk direferensikan tanpa menggunakan pustaka impor.
Apa pun artinya!

-U
--tambahkan-garis bawah
Menentukan bahwa ketika dlltool sedang membuat file ekspor yang harus didahului dan
menggarisbawahi nama-nama semua simbol yang diekspor.

--tidak ada garis bawah utama
--memimpin-garis bawah
Menentukan apakah simbol standar harus dipaksa untuk menjadi awalan, atau tidak.

--tambahkan-stdcall-garis bawah
Menentukan bahwa ketika dlltool sedang membuat file ekspor yang harus didahului dan
menggarisbawahi nama-nama yang diekspor panggilan pertama fungsi. Nama variabel dan non-stdcall
nama fungsi tidak diubah. Opsi ini berguna saat membuat GNU-compatible
impor lib untuk DLL pihak ketiga yang dibuat dengan alat MS-Windows.

-k
--bunuh-at
Menentukan bahwa @ sufiks harus dihilangkan dari nama stdcall
fungsi yang akan diimpor dari DLL. Ini berguna saat membuat impor
perpustakaan untuk DLL yang mengekspor fungsi stdcall tetapi tanpa fungsi biasa @
akhiran nama simbol.

Ini tidak mengubah penamaan simbol yang disediakan oleh perpustakaan impor ke program
ditautkan dengannya, tetapi hanya entri dalam tabel impor (yaitu bagian .idata).

-A
--add-stdcall-alias
Menentukan bahwa ketika dlltool sedang membuat file ekspor yang harus ditambahkan alias untuk
simbol stdcall tanpa @ selain simbol dengan @ .

-p
--ext-prefix-alias awalan
Global dlltool untuk membuat alias eksternal untuk semua impor DLL dengan yang ditentukan
awalan. Alias ​​​​dibuat untuk simbol eksternal dan impor tanpa awalan
menggarisbawahi.

-x
--no-idata4
Menentukan bahwa ketika dlltool sedang membuat file ekspor dan perpustakaan yang harus dihilangkan
bagian ".idata4". Ini untuk kompatibilitas dengan sistem operasi tertentu.

--use-nul-prefixed-import-tables
Menentukan bahwa ketika dlltool sedang membuat file ekspor dan perpustakaan yang harus diawali
".idata4" dan ".idata5" dengan nol elemen. Ini mengemulasi perpustakaan impor gnu lama
generasi "dlltool". Secara default opsi ini dimatikan.

-c
--no-idata5
Menentukan bahwa ketika dlltool sedang membuat file ekspor dan perpustakaan yang harus dihilangkan
bagian ".idata5". Ini untuk kompatibilitas dengan sistem operasi tertentu.

-I nama file
--mengenali nama file
Menentukan bahwa dlltool harus memeriksa perpustakaan impor yang ditunjukkan oleh nama file serta
laporkan, pada "stdout", nama DLL terkait. Hal ini dapat dilakukan di
Selain operasi lain yang ditunjukkan oleh opsi dan argumen lain.
dlltool gagal jika perpustakaan impor tidak ada atau sebenarnya bukan impor
Perpustakaan. Lihat juga --identify-strict.

--identify-strict
Memodifikasi perilaku dari --mengenali opsi, sehingga kesalahan dilaporkan jika
nama file dikaitkan dengan lebih dari satu DLL.

-i
--interwork
Menentukan bahwa dlltool harus menandai objek dalam file perpustakaan dan mengekspor file
yang dihasilkannya sebagai pendukung interworking antara kode ARM dan Thumb.

-n
--nodelete
Membuat dlltool simpan file assembler sementara yang digunakan untuk membuat ekspor
mengajukan. Jika opsi ini diulang maka dlltool juga akan mempertahankan objek sementara
file yang digunakan untuk membuat file perpustakaan.

-t awalan
--temp-awalan awalan
Membuat dlltool menggunakan awalan saat membuat nama assembler dan objek sementara
file. Secara default, awalan file temp dihasilkan dari pid.

-v
--verbose
Buat dlltool menjelaskan apa yang dilakukannya.

-h
--membantu
Menampilkan daftar opsi baris perintah dan kemudian keluar.

-V
--Versi: kapan
Menampilkan nomor versi dlltool dan kemudian keluar.

@fillet
Baca opsi baris perintah dari fillet. Opsi yang dibaca disisipkan sebagai pengganti
asli @fillet pilihan. Jika fillet tidak ada, atau tidak dapat dibaca, maka opsi
akan diperlakukan secara harfiah, dan tidak dihapus.

Opsi dalam fillet dipisahkan oleh spasi. Karakter spasi putih dapat disertakan
dalam sebuah opsi dengan mengelilingi seluruh opsi dalam tanda kutip tunggal atau ganda. Setiap
karakter (termasuk garis miring terbalik) dapat dimasukkan dengan mengawali karakter menjadi
disertakan dengan garis miring terbalik. NS fillet mungkin sendiri mengandung tambahan @fillet pilihan; setiap
opsi tersebut akan diproses secara rekursif.

Gunakan i686-w64-mingw32-dlltool online menggunakan layanan onworks.net


Ad


Ad