-
MIDL2000
|
-
harus menentukan /c_ext untuk deklarator abstrak
- Deklarator abstrak mewakili ekstensi Microsoft ke RPC dan tidak didefinisikan dalam DCE RPC. Oleh karena itu, jika file Anda menyertakan deklarator abstrak, Anda tidak dapat mengkompilasi dengan sakelar /osf , yang memberlakukan kompatibilitas DCE yang ketat. MIDL versi 3.0 dan yang lebih baru menggunakan sakelar /c_ext sebagai default; sakelar /osf menonaktifkan sakelar /c_ext . Untuk informasi tentang deklarator abstrak, lihat Isi ACF.
|
-
MIDL2001
|
-
instansiasi data ilegal; Anda harus menggunakan "extern" atau "statis"
- Deklarasi dan inisialisasi dalam file IDL tidak kompatibel dengan DCE RPC. Fitur ini adalah ekstensi Microsoft yang tidak tersedia saat Anda mengkompilasi dalam mode kompatibilitas DCE (/osf).
|
-
MIDL2002
|
-
compiler stack overflow
- Pengkompilasi kehabisan ruang tumpukan saat memproses file IDL. Masalah ini dapat terjadi ketika pengkompilasi memproses deklarasi atau ekspresi yang kompleks. Untuk mengatasi masalah, sederhanakan deklarasi atau ekspresi yang kompleks.
|
-
MIDL2003
|
-
Redefinisi
- Pesan kesalahan ini dapat muncul dalam keadaan berikut: jenis telah ditentukan ulang; prototipe prosedur telah ditentukan ulang; anggota struktur atau serikat dengan nama yang sama sudah ada; parameter dengan nama yang sama sudah ada dalam prototipe.
|
-
MIDL2004
|
-
Pengikatan [auto_handle] akan digunakan
- Tidak ada jenis handel yang didefinisikan sebagai jenis handel default. Pengompilasi mengasumsikan bahwa handel otomatis akan digunakan sebagai handel pengikatan untuk prosedur yang ditentukan.
|
-
MIDL2005
|
-
kehabisan memori
- Kompilator kehabisan memori selama kompilasi. Kurangi ukuran atau kompleksitas file IDL atau alokasikan lebih banyak memori untuk proses.
|
-
MIDL2006
|
-
definisi rekursif
- Struktur atau gabungan telah ditentukan secara rekursif. Kesalahan ini dapat terjadi ketika spesifikasi penunjuk dalam definisi struktur berlapis terlewatkan.
|
-
MIDL2007
|
-
impor diabaikan; file sudah diimpor
- Mengimpor file IDL adalah operasi idempotensi. Termasuk lebih dari sekali tidak berpengaruh. Semua kecuali operasi impor pertama diabaikan.
|
-
MIDL2008
|
-
enum jarang memerlukan /c_ext atau /ms_ext
- Menetapkan nilai ke konstanta enumerasi tidak kompatibel dengan DCE RPC. Jika Anda ingin menggunakan ekstensi Microsoft ke MIDL yang mengizinkan penetapan nilai ke konstanta enumerasi, Anda tidak dapat mengkompilasi dengan sakelar /osf , yang memberlakukan kompatibilitas DCE yang ketat. MIDL versi 3.0 dan yang lebih baru menggunakan sakelar /c_ext dan /ms_ext sebagai default; sakelar /osf menonaktifkan sakelar ekstensi ini.
|
-
MIDL2009
|
-
simbol tidak terdefinis
- Simbol yang tidak ditentukan telah digunakan dalam ekspresi. Kesalahan ini dapat terjadi ketika Anda menggunakan nilai enumerasi yang tidak terdefinisi.
|
-
MIDL2010
|
-
jenis yang digunakan dalam file ACF yang tidak ditentukan dalam file IDL
- Tipe yang tidak ditentukan sedang digunakan.
|
-
MIDL2011
|
-
deklarasi tipe tidak terselesaikan
- Jenis yang dilaporkan dalam bidang informasi kesalahan tambahan belum ditentukan di tempat lain dalam file IDL.
|
-
MIDL2012
|
-
penggunaan konstanta karakter lebar memerlukan /ms_ext atau /c_ext
- Konstanta karakter lebar adalah ekstensi Microsoft ke DCE IDL. Untuk menggunakan jenis data wchar_t, Anda tidak dapat mengkompilasi dengan sakelar /osf , yang menggantikan sakelar default pengkompilasi MIDL /ms_ext dan /c_ext.
|
-
MIDL2013
|
-
penggunaan string karakter lebar memerlukan /ms_ext atau /c_ext
- Konstanta string karakter lebar adalah ekstensi Microsoft ke DCE IDL. Untuk menggunakan jenis data wchar_t, Anda tidak dapat mengkompilasi dengan sakelar /osf , yang menggantikan sakelar default pengkompilasi MIDL /ms_ext dan /c_ext.
|
-
MIDL2014
|
-
pendefinisian ulang tipe wchar_t yang tidak konsisten
- Jenis wchar_t telah didefinisikan ulang sebagai jenis yang tidak setara dengan DOS pendek *yang tidak ditandatangani.
|
-
MIDL2015
|
-
importlib tidak ditemukan
- Pengkompilasi tidak dapat menemukan pustaka tipe yang ditentukan oleh direktif [ importlib]. Periksa untuk memastikan jalur dan nama pustaka sudah benar.
|
-
MIDL2016
|
-
dua blok pustaka
- Dua blok pustaka (bahkan dengan nama yang berbeda) dalam file sumber yang sama adalah ilegal. Gabungkan semua elemen ke dalam satu blok pustaka.
|
-
MIDL2017
|
-
pernyataan dispinterface memerlukan definisi untuk IDispatch
- Kesalahan ini umumnya terjadi ketika file Stdole2.tlb atau Oaidl.idl tidak diimpor.
|
-
MIDL2018
|
-
kesalahan mengakses pustaka jenis
- Pengkompilasi tidak dapat menemukan pustaka tipe yang ditentukan. Periksa untuk memastikan bahwa Anda telah menentukan jalur dengan benar.
|
-
MIDL2019
|
-
kesalahan mengakses info jenis
- Pustaka jenis yang diimpor rusak, tidak valid, atau hanya dibangun sebagian.
|
-
MIDL2020
|
-
kesalahan saat menghasilkan pustaka tipe
- Pustaka tipe tidak dapat dihasilkan. Salah satu kemungkinan penyebab kesalahan ini adalah menentukan jalur ke file IDL yang lebih panjang dari 126 karakter. Oleaut32.dll tidak mendukung nama jalur yang lebih panjang dari 126 karakter.
|
-
MIDL2021
|
-
id duplikat
- Aplikasi menggunakan pernyataan id dalam file IDL untuk menentukan DISPID untuk fungsi anggota. Fungsi anggota dapat berupa properti atau metode antarmuka atau dispinterfaces. Kesalahan ini menunjukkan file IDL menentukan nomor pengidentifikasi yang sama untuk dua metode atau properti.
|
-
MIDL2022
|
-
nilai ilegal atau hilang untuk atribut entri
- Argumen untuk atribut entri dapat berupa string yang menentukan titik masuk bernama, atau angka ordinal yang menentukan titik masuk. Argumen ini hilang atau berisi nilai yang tidak valid.
|
-
MIDL2023
|
-
pemulihan kesalahan mengasumsikan
- Pengkompilasi MIDL menemukan karakter ilegal dalam file IDL.
|
-
MIDL2024
|
-
kesalahan pemulihan buang
- Pengkompilasi MIDL menemukan karakter ilegal dalam file IDL. Ini akan mengabaikan karakter ilegal.
|
-
MIDL2025
|
-
kesalahan sintaks
- Pengkompilasi mendeteksi kesalahan sintaks pada baris yang ditentukan.
|
-
MIDL2026
|
-
tidak dapat pulih dari kesalahan sintaks sebelumnya; membatalkan kompilasi
- Pengkompilasi MIDL secara otomatis mencoba memulihkan dari kesalahan sintaks dengan menambahkan atau menghapus elemen sintaksis. Pesan ini menunjukkan bahwa meskipun upaya ini untuk pulih, kompilator mendeteksi terlalu banyak kesalahan. Koreksi kesalahan dan kompilasi ulang yang ditentukan.
|
-
MIDL2027
|
-
opsi pragma tidak diketahui
- Pragma C yang ditentukan tidak didukung di MIDL. Hapus pragma dari file IDL.
|
-
MIDL2028
|
-
fitur tidak diimplementasikan
- Fitur MIDL, meskipun bagian dari definisi bahasa, tidak diimplementasikan di Microsoft RPC dan tidak didukung oleh pengkompilasi MIDL. Misalnya, fitur bahasa berikut tidak diimplementasikan: bitset, pipa, dan jenis karakter internasional. Fitur bahasa yang tidak di-unimplementasi muncul di bidang informasi kesalahan tambahan dari pesan kesalahan.
|
-
MIDL2029
|
-
jenis tidak diimplementasikan
- Jenis data yang ditentukan, meskipun kata kunci MIDL legal, tidak diterapkan di Microsoft RPC.
|
-
MIDL2030
|
-
non-pointer yang digunakan dalam operasi dereferensi
- Jenis data yang bukan penunjuk telah dikaitkan dengan operasi penunjuk. Anda tidak dapat mengakses objek melalui non-pointer yang ditentukan.
|
-
MIDL2031
|
-
ekspresi memiliki pembagian dengan nol
- Ekspresi konstanta berisi pembagian dengan nol.
|
-
MIDL2032
|
-
ekspresi menggunakan jenis yang tidak kompatibel
- Sisi kiri dan kanan operator dalam ekspresi memiliki jenis yang tidak kompatibel.
|
-
MIDL2033
|
-
ekspresi nonarray menggunakan operator indeks
- Ekspresi menggunakan operasi pengindeksan array pada item data yang bukan dari jenis array.
|
-
MIDL2034
|
-
sisi kiri ekspresi tidak mengevaluasi ke struct/union/enum
- Operator referensi langsung atau tidak langsung "." atau "->" telah diterapkan ke objek data yang bukan merupakan struktur, penyatuan, atau enumerasi. Anda tidak dapat memperoleh referensi langsung atau tidak langsung menggunakan objek yang ditentukan.
|
-
MIDL2035
|
-
ekspresi konstanta diharapkan
- Ekspresi konstanta diharapkan dalam sintaks. Misalnya, batas array memerlukan ekspresi konstanta. Pengkompilasi mengeluarkan pesan kesalahan ini ketika array terikat ditentukan dengan variabel atau simbol yang tidak terdefinisi.
|
-
MIDL2036
|
-
ekspresi tidak dapat dievaluasi pada waktu kompilasi
- Pengkompilasi tidak dapat mengevaluasi ekspresi pada waktu kompilasi.
|
-
MIDL2037
|
-
ekspresi tidak diimplementasikan
- Fitur yang didukung dalam rilis kompilator MIDL sebelumnya tidak didukung dalam versi pengkompilasi yang disediakan dengan Microsoft RPC. Hapus ekspresi yang ditentukan.
|
-
MIDL2038
|
-
tidak ada atribut [pointer_default] yang ditentukan, dengan asumsi [unik] untuk semua penunjuk yang tidak ditangguhkan
- Pengkompilasi MIDL menawarkan tiga kasus default yang berbeda untuk pointer yang tidak memiliki atribut pointer. Parameter fungsi yang merupakan pointer tingkat atas default ke penunjuk [ref]. Pointer yang disematkan dalam struktur dan pointer ke pointer lain (bukan pointer tingkat atas) default ke jenis yang ditentukan oleh atribut [pointer_default]. Ketika tidak ada atribut [pointer_default] yang disediakan, pointer tingkat nontop ini default ke pointer unik. Pesan kesalahan ini menunjukkan kasus terakhir: tidak ada atribut [pointer_default] yang disediakan, dan setidaknya ada satu pointer tingkat non-atas yang akan diperlakukan sebagai pointer unik. Untuk informasi selengkapnya, lihat Jenis Penunjuk Default.
|
-
MIDL2039
|
-
antarmuka tidak otomatisasi marshaling sesuai
- Antarmuka tidak memenuhi persyaratan untuk antarmuka OLE Automation. Periksa untuk memastikan antarmuka berasal dari IUnknown atau IDispatch.
|
-
MIDL2040
|
-
[out] hanya parameter yang tidak boleh menjadi penunjuk ke struktur terbuka
- Parameter [out]-only telah digunakan sebagai penunjuk ke struktur, yang dikenal sebagai struktur terbuka, yang rentang dan ukuran yang ditransmisikan ditentukan pada durasi. Stub server tidak tahu berapa banyak ruang yang akan dialokasikan untuk struktur terbuka. Gunakan penunjuk ke penunjuk ke struktur terbuka dan pastikan bahwa aplikasi server mengalokasikan ruang yang cukup untuk itu.
|
-
MIDL2041
|
-
[out] hanya parameter yang tidak boleh berupa string yang tidak berukuran
- Array dengan atribut string telah dinyatakan sebagai parameter [out]-only tanpa spesifikasi ukuran apa pun. Stub server memerlukan informasi ukuran untuk mengalokasikan memori untuk string. Anda dapat menghapus atribut string dan menambahkan atribut [size_is], atau Anda dapat mengubah parameter menjadi parameter [in, out].
|
-
MIDL2042
|
-
Parameter [out] bukan penunjuk
- Semua parameter [out] harus pointer, sesuai dengan konvensi call-by-value dari bahasa pemrograman C. Parameter arah [out] menunjukkan bahwa server mengirimkan nilai ke klien. Dengan konvensi call-by-value, server dapat mengirimkan data ke klien hanya jika argumen fungsi adalah pointer.
|
-
MIDL2043
|
-
struktur terbuka tidak boleh berupa parameter
- Struktur terbuka berisi array yang sesuai sebagai elemen terakhir. Struktur atau penyatuan dipotok ketika elemen terakhir dari struktur atau gabungan tersebut adalah array yang sesuai.
|
-
MIDL2044
|
-
[out] handel konteks/handel generik harus ditentukan sebagai penunjuk ke jenis handel tersebut
- Parameter handel konteks atau handel yang ditentukan pengguna dengan atribut arah [out] harus menjadi penunjuk ke penunjuk.
|
-
MIDL2045
|
-
handel konteks tidak boleh berasal dari jenis yang memiliki atribut [transmit_as]
- Handel konteks harus ditransmisikan sebagai jenis handel konteks. Mereka tidak dapat ditransmisikan sebagai jenis lain dan tidak dapat berasal dari [transmit_is], [represent_as], [wire_marshal], atau [user_marshal].
|
-
MIDL2046
|
-
tidak dapat menentukan jumlah variabel argumen ke prosedur jarak jauh
- Panggilan prosedur jarak jauh yang menentukan jumlah variabel argumen pada waktu kompilasi tidak kompatibel dengan definisi DCE RPC. Anda tidak dapat menggunakan jumlah variabel argumen di Microsoft RPC.
|
-
MIDL2047
|
-
parameter bernama tidak boleh "batal"
- Parameter dengan kekosongan jenis dasar ditentukan dengan nama.
|
-
MIDL2048
|
-
parameter berasal dari "coclass" atau "module"
-
Coclass menentukan objek tingkat atas yang berisi antarmuka dan dispinterfaces. Ini tidak dapat diteruskan sebagai parameter.
|
-
MIDL2049
|
-
hanya parameter pertama yang dapat menjadi handel pengikatan; Anda harus menentukan sakelar /ms_ext
- DCE RPC hanya memungkinkan parameter pertama menjadi handel pengikatan. Mengkompilasi dengan sakelar /osf menonaktifkan sakelar /ms_ext default yang mendukung beberapa parameter handel dan menangani parameter di selain posisi paling kiri.
|
-
MIDL2050
|
-
tidak dapat menggunakan [comm_status] pada parameter dan jenis pengembalian
- Baik prosedur maupun salah satu parameternya memiliki atribut [comm_status]. Atribut [comm_status] menentukan bahwa hanya satu objek data pada satu waktu yang dapat berjenis error_status_t.
|
-
MIDL2051
|
-
Atribut [local] pada prosedur memerlukan /ms_ext
- Atribut [lokal] adalah ekstensi Microsoft untuk DCE IDL. Untuk menggunakan atribut ini pada fungsi, Anda tidak dapat mengkompilasi dengan sakelar /osf . Sakelar /osf mengambil alih sakelar default pengkompilasi MIDL /ms_ext dan /c_ext.
|
-
MIDL2052
|
-
atribut properti hanya dapat digunakan dengan prosedur
- Penggunaan atribut [propget], [propput], atau [propputref] yang tidak tepat. Periksa untuk memastikan bahwa Anda telah mengeja nama fungsi properti dengan benar dan bahwa properti dan fungsi memiliki nama yang sama.
|
-
MIDL2053
|
-
prosedur mungkin tidak memiliki lebih dari satu atribut properti
- Paling banyak, hanya salah satu atribut [propget], [propput], atau [propputref] yang dapat ditentukan untuk fungsi.
|
-
MIDL2054
|
-
prosedur ini memiliki kombinasi ilegal dari atribut operasi
- Atribut tertentu tidak dapat digunakan sehubungan dengan atribut lain. Periksa Referensi Bahasa MIDL untuk persyaratan dan sintaks yang tepat dari atribut yang digunakan dalam prosedur ini.
|
-
MIDL2055
|
-
bidang yang berasal dari array yang sesuai harus menjadi anggota terakhir dari struktur
- Struktur berisi array yang sesuai yang bukan elemen terakhir dalam struktur. Array yang sesuai harus muncul sebagai elemen struktur terakhir.
|
-
MIDL2056
|
-
label [case] duplikat
- Label kasus duplikat telah ditentukan. Label duplikat ditampilkan.
|
-
MIDL2057
|
-
no [default] case specified for discriminated union
- Serikat diskriminasi telah ditentukan tanpa kasus default.
|
-
MIDL2058
|
-
ekspresi atribut tidak dapat diselesaikan
- Ekspresi yang terkait dengan atribut tidak dapat diselesaikan. Kesalahan ini biasanya terjadi ketika variabel yang muncul dalam ekspresi tidak ditentukan. Misalnya, kesalahan dapat terjadi ketika variabel s tidak ditentukan dan digunakan oleh atribut [size_is].
|
-
MIDL2059
|
-
ekspresi atribut harus berjenis integral, tidak ada dukungan untuk ekspresi 64-bit
- Variabel atau ekspresi atribut yang ditentukan harus merupakan jenis integral. Kesalahan ini terjadi ketika jenis atribut-ekspresi tidak mengatasi bilangan bulat.
|
-
MIDL2060
|
-
[byte_count] membutuhkan /ms_ext
- Atribut [byte_count] adalah ekstensi Microsoft untuk DCE IDL. Untuk menggunakan atribut ini, Anda tidak dapat mengkompilasi dengan sakelar /osf , yang menggantikan sakelar default pengkompilasi MIDL /ms_ext dan /c_ext.
|
-
MIDL2061
|
-
[byte_count] hanya dapat diterapkan ke parameter keluar dari jenis pointer
- Atribut [byte_count] hanya dapat diterapkan ke parameter [out], dan semua parameter [out] harus berupa jenis pointer.
|
-
MIDL2062
|
-
[byte_count] tidak dapat ditentukan pada penunjuk ke array atau struktur yang sesuai
- Atribut [byte_count] tidak dapat diterapkan ke array atau struktur yang sesuai.
|
-
MIDL2063
|
-
parameter yang menentukan jumlah byte bukan [in] saja atau parameter jumlah byte bukan [out] saja
- Nilai yang terkait dengan [byte_count] harus ditransmisikan dari klien ke server; itu harus menjadi parameter [in]. Parameter [byte_count] tidak perlu menjadi parameter [in, out].
|
-
MIDL2064
|
-
parameter yang menentukan jumlah byte bukan jenis integral
- Nilai yang terkait dengan jumlah byte harus berupa int jenis bilangan bulat, kecil, pendek, atau panjang.
|
-
MIDL2065
|
-
[byte_count] tidak dapat ditentukan pada parameter dengan atribut ukuran
- Atribut [byte_count] tidak dapat digunakan dengan atribut ukuran lain seperti [size_is] atau [length_is].
|
-
MIDL2066
|
-
[case] ekspresi tidak konstan
- Ekspresi yang ditentukan untuk label kasus bukan konstanta.
|
-
MIDL2067
|
-
[case] ekspresi bukan tipe integral
- Ekspresi yang ditentukan untuk label huruf besar/kecil bukan tipe bilangan bulat.
|
-
MIDL2068
|
-
menentukan [context_handle] pada jenis selain void * membutuhkan /ms_ext
- Untuk kompatibilitas DCE-RPC, handel konteks harus berupa penunjuk tipe batal *. Jika Anda ingin handel konteks dikaitkan dengan jenis selain batal *, jangan gunakan sakelar pengkompilasi MIDL /osf, yang menggantikan sakelar default kompilator MIDL /ms_ext.
|
-
MIDL2069
|
-
tidak dapat menentukan lebih dari satu parameter dengan masing-masing comm_status/fault_status
- Prosedur hanya dapat memiliki satu parameter dengan atribut [comm_status]. Ini dapat memiliki paling banyak satu parameter dengan atribut [fault_status].
|
-
MIDL2070
|
-
parameter comm_status/fault_status harus berupa parameter pointer [out] saja
- Jenis kode kesalahan [comm_status] dan [fault_status] ditransmisikan dari server ke klien dan oleh karena itu harus ditentukan sebagai parameter [out]. Karena kendala dalam bahasa pemrograman C, semua parameter [keluar] harus menjadi pointer.
|
-
MIDL2071
|
-
kesalahan sintaks titik akhir
- Sintaks titik akhir salah.
|
-
MIDL2072
|
-
atribut yang tidak dapat diaplikasikan
- Atribut yang ditentukan tidak dapat diterapkan dalam konstruksi ini. Misalnya, atribut string berlaku untuk array karakter atau penunjuk karakter dan tidak dapat diterapkan ke struktur yang terdiri dari dua bilangan bulat pendek :
typedef [string] struct moo
{
short x;
short y;
};
|
-
MIDL2073
|
-
[alokasikan] membutuhkan /ms_ext
- Atribut alokasikan mewakili ekstensi Microsoft yang tidak didefinisikan sebagai bagian dari DCE RPC. Untuk menggunakan atribut ini, Anda tidak dapat mengkompilasi dengan sakelar /osf , yang menggantikan sakelar default pengkompilasi MIDL /ms_ext
|
-
MIDL2074
|
-
mode [alokasikan] tidak valid
- Mode tidak valid untuk konstruksi atribut [alokasikan] telah ditentukan. Empat mode yang valid adalah single_node, all_nodes, on_null, dan selalu.
|
-
MIDL2075
|
-
atribut panjang tidak dapat diterapkan dengan atribut string
- Saat atribut string digunakan, file stub yang dihasilkan memanggil fungsi strlen untuk menentukan panjang string. Jangan gunakan atribut panjang dan atribut string untuk variabel yang sama.
|
-
MIDL2076
|
-
[last_is] dan [length_is] tidak dapat ditentukan secara bersamaan
- [last_is] dan [length_is] telah ditentukan untuk array yang sama. Atribut ini terkait sebagai berikut: panjang = pertama terakhir + 1. Karena setiap nilai dapat berasal dari nilai lainnya, jangan tentukan keduanya.
|
-
MIDL2077
|
-
[max_is] dan [size_is] tidak dapat ditentukan secara bersamaan
- Baik [ max_is] dan [ size_is] telah ditentukan untuk array yang sama. Atribut ini terkait sebagai berikut: maks = ukuran + 1. Karena setiap nilai dapat berasal dari nilai lainnya, jangan tentukan keduanya.
|
-
MIDL2078
|
-
tidak ada atribut [switch_is] yang ditentukan saat penggunaan union
- Tidak ada diskriminan yang ditentukan untuk gabungan. Atribut [switch_is] menunjukkan diskriminan yang digunakan untuk memilih di antara bidang serikat.
|
-
MIDL2079
|
-
no [uuid] specified
- Tidak ada UUID yang ditentukan untuk antarmuka.
|
-
MIDL2080
|
-
[uuid] diabaikan pada antarmuka [lokal]
- Menggunakan atribut [lokal] pada antarmuka objek menyebabkan pengkompilasi MIDL mengabaikan atribut [uuid]. Anda tidak dapat menggunakan kedua atribut pada antarmuka RPC.
|
-
MIDL2081
|
-
ketidakcocokan jenis antara ekspresi atribut panjang dan ukuran
- Ekspresi atribut panjang dan ukuran harus dari jenis yang sama. Misalnya, peringatan ini dikeluarkan ketika variabel atribut untuk ekspresi [size_is] berjenis panjang yang tidak ditandatangani dan variabel atribut untuk ekspresi [length_is] berjenis panjang.
|
-
MIDL2082
|
-
Atribut [string] harus ditentukan "byte," "char," atau array atau pointer "wchar_t"
- Atribut string tidak dapat diterapkan ke pointer atau array yang jenis dasarnya bukan byte, char, atau struct di mana semua anggota adalah jenis byte atau karakter .
|
-
MIDL2083
|
-
ketidakcocokan antara jenis ekspresi [switch_is] dan jenis sakelar union
- Jika union [switch_type] tidak ditentukan, jenis sakelar adalah jenis yang sama dengan bidang [switch_is].
|
-
MIDL2084
|
-
[transmit_as] tidak boleh diterapkan pada jenis yang berasal dari handel konteks
- Handel konteks tidak dapat ditransmisikan sebagai jenis lain.
|
-
MIDL2085
|
-
[transmit_as] harus menentukan jenis yang dapat ditransmisikan
- Jenis [transmit_as] yang ditentukan berasal dari jenis yang tidak dapat ditransmisikan oleh Microsoft RPC, seperti batal, batal *, atau int. Gunakan jenis dasar RPC yang ditentukan; dalam kasus int, tambahkan penentu ukuran seperti kecil, pendek, atau panjang untuk memenuhi syarat int.
|
-
MIDL2086
|
-
jenis yang dikirimkan untuk [transmit_as] dan [represent_as] tidak boleh berupa pointer atau berasal dari pointer
- Jenis yang ditransmisikan tidak boleh berupa penunjuk atau berasal dari penunjuk.
|
-
MIDL2087
|
-
jenis yang disajikan untuk [transmit_as] dan [represent_as] tidak boleh berasal dari array yang sesuai/bervariasi, setara penunjuknya, atau struktur yang sesuai/bervariasi
- Jenis yang telah diterapkan [transmit_as] tidak dapat berasal dari array atau struktur yang sesuai (array atau struktur yang ukurannya ditentukan pada durasi).
|
-
MIDL2088
|
-
Format [uuid] salah
- Format UUID tidak sesuai dengan spesifikasi. UUID harus berupa string yang terdiri dari lima urutan digit heksadesimal panjang 8, 4, 4, 4, dan 12 digit. "12345678-1234-ABCD-EF01-28A49C28F17D" adalah UUID yang valid. Gunakan fungsi UuidCreate atau utilitas untuk menghasilkan UUID yang valid.
|
-
MIDL2089
|
-
uuid bukan angka heksadesimal
- UUID yang ditentukan untuk antarmuka berisi karakter yang tidak valid dalam representasi angka heksadesimal. Karakter 0 hingga 9 dan A hingga F valid dalam representasi heksadesimal.
|
-
MIDL2090
|
-
parameter opsional harus datang setelah parameter yang diperlukan
- Untuk deskripsi urutan daftar parameter, lihat [opsional] di Referensi Bahasa MIDL.
|
-
MIDL2091
|
-
[dllname] diperlukan ketika [entri] digunakan
- Jika Anda menentukan titik masuk ke DLL, Anda juga harus menentukan nama DLL tersebut dengan menggunakan atribut [dllname].
|
-
MIDL2092
|
-
[bindable] tidak valid tanpa [propget], [propput], atau [propputref]
- Atribut [dapat diikat] hanya valid pada properti, oleh karena itu Anda juga harus menentukan salah satu fungsi akses properti atau pengaturan properti.
|
-
MIDL2093
|
-
prosedur dengan [propput] atau [propputref] harus memiliki setidaknya satu parameter
- Prosedur [propput] atau [ propputref] harus memiliki setidaknya parameter [in] dengan properti untuk diatur; prosedur [propget] harus memiliki setidaknya parameter [out, retval] untuk menerima properti atau referensi.
|
-
MIDL2094
|
-
Atribut [id] diperlukan
- Fungsi anggota ini, karena sintaks dispinterface yang digunakan, memerlukan DISPID, yang Anda tentukan dengan menggunakan atribut [ id]. Ketika Anda menentukan dispinterface dengan menggunakan properti dan metode, Anda harus menentukan DISPID untuk setiap properti dan metode.
|
-
MIDL2095
|
-
nama antarmuka yang ditentukan dalam ACF tidak cocok dengan yang ditentukan dalam file IDL
- Dalam mode pengkompilasi saat ini, nama yang mengikuti kata kunci antarmuka di ACF harus sama dengan nama yang mengikuti kata kunci antarmuka dalam file IDL. Nama antarmuka dalam file IDL dan ACF dapat berbeda ketika Anda mengkompilasi dengan sakelar pengkompilasi MIDL /acf.
|
-
MIDL2096
|
-
atribut duplikat
- Atribut duplikat atau bertentangan telah ditentukan. Kesalahan ini sering terjadi ketika dua atribut saling eksklusif. Misalnya, atribut [kode] dan [nocode] tidak dapat digunakan secara bersamaan.
|
-
MIDL2097
|
-
parameter dengan atribut [comm_status] atau [fault_status] harus berupa penunjuk untuk mengetik error_status_t
- Ketika [fault_status] atau [comm_status] digunakan sebagai atribut parameter, parameter harus berupa parameter [out] dari jenis error_status_t. Jika terjadi kesalahan server, parameter diatur ke kode kesalahan. Ketika panggilan jarak jauh berhasil diselesaikan, prosedur menetapkan nilai.
|
-
MIDL2098
|
-
prosedur [lokal] tidak dapat ditentukan dalam file ACF
- Prosedur lokal telah ditentukan dalam ACF. Prosedur lokal hanya dapat ditentukan dalam file IDL.
|
-
MIDL2099
|
-
jenis yang ditentukan tidak didefinisikan sebagai handel
- Jenis yang ditentukan dalam atribut [implicit_handle] tidak didefinisikan sebagai jenis handel. Ubah definisi jenis atau nama jenis yang ditentukan oleh atribut .
|
-
MIDL2100
|
-
prosedur tidak terdefinis
- Atribut telah diterapkan ke prosedur di ACF, dan prosedur tersebut tidak ditentukan dalam file IDL.
|
-
MIDL2101
|
-
parameter ini tidak ada dalam file IDL
- Parameter yang ditentukan dalam ACF tidak ada dalam definisi dalam file IDL. Semua parameter, fungsi, dan definisi jenis yang muncul di ACF harus sesuai dengan parameter, fungsi, dan jenis yang sebelumnya ditentukan dalam file IDL.
|
-
MIDL2102
|
-
konstruksi terikat array ini tidak didukung
- MIDL saat ini mendukung mengekspresikan batas atas dan bawah array dalam bentuk Array[Lower .. Atas] hanya ketika konstanta yang menentukan batas bawah array diselesaikan ke nilai nol.
|
-
MIDL2103
|
-
spesifikasi terikat array ilegal
- Spesifikasi pengguna dari batas array untuk array ukuran tetap adalah ilegal. Contohnya:
typedef short Array[-1]
|
-
MIDL2104
|
-
penunjuk ke array yang sesuai atau array yang berisi array yang sesuai tidak didukung
- Penggunaan array yang sesuai secara ilegal. Untuk aturan yang mengatur array yang sesuai, lihat Array dan RPC.
|
-
MIDL2105
|
-
pointee/array tidak memperoleh ukuran apa pun
- Array yang sesuai telah ditentukan tanpa spesifikasi ukuran apa pun. Anda dapat menentukan ukuran dengan atribut [max_is] atau [size_is].
|
-
MIDL2106
|
-
hanya array tetap dan SAFEARRAYs yang legal dalam pustaka jenis
- Anda telah menggunakan tipe array di dalam pernyataan pustaka yang tidak dapat digunakan dalam pustaka tipe.
|
-
MIDL2107
|
-
SAFEARRAYs hanya legal di dalam blok pustaka
- Pengkompilasi MIDL tidak mengenali SAFEARRAY sebagai jenis data yang valid kecuali saat membuat pustaka jenis.
|
-
MIDL2108
|
-
konstanta karakter yang terbentuk dengan buruk
- Karakter akhir baris tidak diperbolehkan dalam konstanta karakter.
|
-
MIDL2109
|
-
akhir file ditemukan dalam komentar
- Karakter akhir file telah ditemui dalam komentar.
|
-
MIDL2110
|
-
akhir file ditemukan dalam string
- Karakter akhir file telah ditemui dalam string.
|
-
MIDL2111
|
-
panjang pengidentifikasi melebihi 31 karakter
- Pengidentifikasi dibatasi hingga 31 karakter alfanumerik. Nama pengidentifikasi yang lebih panjang dari 31 karakter dipotok.
|
-
MIDL2112
|
-
akhir baris ditemukan dalam string
- Karakter akhir baris telah ditemui dalam string . Verifikasi bahwa Anda telah menyertakan karakter tanda kutip ganda yang mengakhiri string.
|
-
MIDL2113
|
-
konstanta string melebihi batas 255 karakter
- String melebihi panjang maksimum yang diperbolehkan yaitu 255 karakter.
|
-
MIDL2114
|
-
pengidentifikasi melebihi batas 255 karakter dan telah dipotok
- Pengidentifikasi melebihi panjang maksimum yang diperbolehkan yaitu 255 karakter. Karakter berlebih dalam pengidentifikasi dipotok.
|
-
MIDL2115
|
-
konstanta terlalu besar
- Konstanta terlalu besar untuk diwakili secara internal.
|
-
MIDL2116
|
-
kesalahan penguraian numerik
- Pengkompilasi tidak dapat mengurai pengidentifikasi numerik.
|
-
MIDL2117
|
-
kesalahan dalam membuka file
- Sistem operasi melaporkan kesalahan saat mencoba membuka file output. Kesalahan ini dapat disebabkan oleh nama yang terlalu panjang untuk sistem file atau dengan nama file duplikat.
|
-
MIDL2118
|
kesalahan pengikatan ke fungsi
|
-
MIDL2119
|
kesalahan menginisialisasi OLE
|
-
MIDL2120
|
kesalahan saat memuat pustaka
|
-
MIDL2121
|
-
[out] hanya parameter yang tidak boleh berasal dari tingkat atas [unik] atau [ptr] pointer/array
- Pointer unik tidak boleh menjadi parameter [out]-only. Menurut definisi, pointer unik dapat berubah dari NULL ke non-NULL. Tidak ada informasi tentang parameter [out]-only yang diteruskan dari klien ke server.
|
-
MIDL2122
|
-
atribut tidak berlaku untuk union non-rpcable ini
- Hanya atribut [switch_is] dan [switch_type] yang berlaku untuk serikat yang ditransmisikan sebagai bagian dari panggilan prosedur jarak jauh.
|
-
MIDL2123
|
-
ekspresi yang digunakan untuk atribut ukuran tidak boleh berasal dari parameter [out]-only
- Nilai parameter [out]-only tidak dikirimkan ke server dan tidak dapat digunakan untuk menentukan panjang atau ukuran parameter [in].
|
-
MIDL2124
|
-
ekspresi yang digunakan untuk atribut panjang untuk parameter [in] tidak dapat berasal dari parameter [out]-only
- Nilai parameter [out]-only tidak dikirimkan ke server dan tidak dapat digunakan untuk menentukan panjang atau ukuran parameter [in].
|
-
MIDL2125
|
-
penggunaan kebutuhan "int" /c_ext
- MIDL adalah bahasa yang sangat di ketik. Semua parameter yang dikirimkan melalui jaringan harus berasal dari salah satu jenis dasar MIDL. Jenis int tidak didefinisikan sebagai bagian dari MIDL. Data yang ditransmisikan harus menyertakan penentu ukuran: kecil, pendek, atau panjang. Data yang tidak dikirimkan melalui jaringan dapat disertakan dalam antarmuka; gunakan sakelar /c_ext .
|
-
MIDL2126
|
-
bidang struct/union tidak boleh "batal"
- Bidang dalam struktur atau gabungan harus dinyatakan sebagai jenis dasar tertentu yang didukung oleh MIDL atau jenis yang berasal dari jenis dasar. Jenis kekosongan tidak diperbolehkan dalam operasi jarak jauh.
|
-
MIDL2127
|
-
Elemen array tidak boleh batal
- Elemen array tidak dapat batal.
|
-
MIDL2128
|
-
penggunaan jenis kualifikasi dan/atau pengubah membutuhkan /c_ext
- Pengubah jenis seperti _cdecl dan _far hanya dapat dikompilasi jika Anda menentukan sakelar /c_ext .
|
-
MIDL2129
|
-
bidang struct/union tidak boleh berasal dari fungsi
- Bidang struktur atau gabungan harus jenis dasar MIDL atau jenis yang berasal dari jenis dasar ini. Fungsi tidak legal dalam bidang struktur atau serikat.
|
-
MIDL2130
|
-
elemen array tidak boleh berupa fungsi
- Elemen array tidak dapat menjadi fungsi.
|
-
MIDL2131
|
-
parameter tidak boleh berupa fungsi
- Parameter ke prosedur jarak jauh harus merupakan variabel dari jenis yang ditentukan. Fungsi tidak dapat menjadi parameter untuk prosedur jarak jauh.
|
-
MIDL2132
|
-
struct/union dengan bit fields needs /c_ext
- Anda harus menentukan sakelar pengkompilasi MIDL /c_ext untuk mengizinkan bidang bit dalam struktur yang tidak ditransmisikan dalam panggilan prosedur jarak jauh.
|
-
MIDL2133
|
-
spesifikasi bidang bit pada jenis lain yang "int" adalah ekstensi yang tidak kompatibel dengan ANSI
- Spesifikasi bahasa pemrograman ANSI C tidak memungkinkan bidang bit diterapkan ke jenis noninteger.
|
-
MIDL2134
|
-
spesifikasi bidang bit hanya dapat diterapkan ke jenis integral sederhana
- Spesifikasi bahasa pemrograman ANSI C tidak memungkinkan bidang bit diterapkan ke jenis noninteger.
|
-
MIDL2135
|
-
bidang struct/union tidak boleh berasal dari handle_t atau handel konteks
- Handel konteks tidak dapat ditransmisikan sebagai bagian dari struktur lain. Mereka harus ditransmisikan sebagai handel konteks.
|
-
MIDL2136
|
-
Elemen array tidak boleh berasal dari handle_t atau handel konteks
- Handel konteks tidak dapat ditransmisikan sebagai bagian dari array.
|
-
MIDL2137
|
-
spesifikasi kebutuhan serikat /c_ext
- Serikat yang muncul dalam definisi antarmuka harus dikaitkan dengan diskriminan atau dinyatakan sebagai lokal. Data yang tidak dikirimkan melalui jaringan dapat secara implisit dinyatakan sebagai lokal ketika Anda menggunakan sakelar /c_ext , yang merupakan default MIDL. Anda tidak dapat mengkompilasi IDL ini dengan sakelar /osf .
|
-
MIDL2138
|
-
parameter yang berasal dari "int" harus memiliki penentu ukuran "kecil," "pendek," atau "long" dengan "int"
- Jenis int hanya merupakan jenis MIDL yang valid pada platform 32-bit, pada int sistem 16-bit harus disertai dengan spesifikasi ukuran. Gunakan salah satu penentu ukuran kecil, pendek, atau panjang.
|
-
MIDL2139
|
-
jenis parameter tidak dapat berasal dari void atau void*
- MIDL adalah bahasa yang sangat di ketik. Semua parameter yang dikirimkan melalui jaringan harus berasal dari salah satu jenis dasar MIDL. MIDL tidak mendukung kekosongan sebagai jenis dasar. Anda harus mengubah deklarasi menjadi jenis MIDL yang valid.
|
-
MIDL2140
|
-
parameter yang berasal dari struct/union yang berisi bidang bit tidak didukung
- Bidang bit tidak didefinisikan sebagai jenis data yang valid oleh DCE RPC.
|
-
MIDL2141
|
-
penggunaan parameter yang berasal dari jenis yang berisi type-modifiers/type-qualifiers needs /c_ext
- Penggunaan kata kunci seperti far, near, const, dan volatile dalam file IDL adalah ekstensi Microsoft ke DCE RPC. Kata kunci ini tidak tersedia saat Anda mengkompilasi dengan sakelar /osf , yang menonaktifkan sakelar ekstensi /c_ext default.
|
-
MIDL2142
|
-
parameter tidak boleh berasal dari penunjuk ke fungsi
- Pustaka run-time RPC mengirimkan pointer dan data terkait antara klien dan server. Pointer ke fungsi tidak dapat ditransmisikan sebagai parameter karena fungsi tidak dapat ditransmisikan melalui jaringan.
|
-
MIDL2143
|
-
parameter tidak boleh berasal dari union berkemampuan nonrpc
- Serikat harus dikaitkan dengan diskriminan. Gunakan atribut [switch_is] dan [switch_type].
|
-
MIDL2144
|
-
jenis pengembalian berasal dari "int." Anda harus menggunakan penentu ukuran dengan "int"
- Pada sistem 16-bit, jenis int bukan jenis MIDL yang valid kecuali disertai dengan spesifikasi ukuran. Gunakan salah satu penentu ukuran kecil, pendek, atau panjang.
|
-
MIDL2145
|
-
jenis pengembalian tidak boleh berasal dari penunjuk kekosongan
- MIDL adalah bahasa yang sangat di ketik. Semua parameter yang dikirimkan melalui jaringan harus berasal dari salah satu jenis dasar MIDL. Jenis kekosongan tidak didefinisikan sebagai bagian dari MIDL. Anda harus mengubah deklarasi menjadi jenis MIDL yang valid.
|
-
MIDL2146
|
-
jenis return tidak boleh berasal dari struktur/union yang berisi bit-fields
- Bidang bit tidak didefinisikan sebagai jenis data yang valid oleh DCE RPC.
|
-
MIDL2147
|
-
jenis return tidak boleh berasal dari union berkemampuan nonrpc
- Serikat harus dikaitkan dengan diskriminan. Gunakan atribut [switch_is] dan [switch_type].
|
-
MIDL2148
|
-
jenis pengembalian tidak boleh berasal dari penunjuk ke fungsi
- Pustaka run-time RPC mengirimkan pointer dan data terkait antara klien dan server. Pointer ke fungsi tidak dapat ditransmisikan sebagai parameter karena RPC tidak menentukan metode untuk mengirimkan fungsi terkait melalui jaringan.
|
-
MIDL2149
|
-
penginisialisasi campuran tidak didukung
- DCE RPC hanya mendukung inisialisasi sederhana. Struktur atau array tidak dapat diinisialisasi dalam file IDL.
|
-
MIDL2150
|
-
Atribut ACF dalam file IDL memerlukan sakelar /app_config
- Ekstensi Microsoft memungkinkan Anda menentukan atribut ACF dalam file IDL. Gunakan tombol /app_config untuk mengaktifkan ekstensi ini.
|
-
MIDL2151
|
-
kebutuhan komentar baris tunggal /ms_ext atau /c_ext
- Komentar satu baris yang menggunakan dua karakter garis miring (//) mewakili ekstensi Microsoft ke DCE RPC. Anda tidak dapat menggunakan komentar satu baris jika Anda mengkompilasi dengan sakelar /osf .
|
-
MIDL2152
|
-
Format [versi] salah
- Nomor versi antarmuka di header antarmuka harus ditentukan dalam format utama. minor, di mana setiap angka dapat berkisar antara 0 hingga 65535.
|
-
MIDL2153
|
-
Kebutuhan "ditandatangani" /ms_ext atau /c_ext
- Penggunaan kata kunci yang ditandatangani adalah ekstensi Microsoft untuk DCE RPC. Anda tidak dapat menggunakan sakelar /osf jika Anda ingin menggunakan fitur ini.
|
-
MIDL2154
|
-
ketidakcocokan dalam jenis penugasan
- Jenis variabel tidak cocok dengan jenis nilai yang ditetapkan ke variabel.
|
-
MIDL2155
|
-
deklarasi harus dalam bentuk: tipe> const <\<declarator> = <ekspresi inisialisasi>
- Deklarasi tidak kompatibel dengan sintaks RPC DCE. Gunakan sakelar mode kompilator /ms_ext atau /c_ext MIDL.
|
-
MIDL2156
|
-
deklarasi harus memiliki "const"
- Deklarasi dalam file IDL harus berupa ekspresi konstan yang menggunakan const kata kunci, misalnya:
const short x = 2;
|
-
MIDL2157
|
-
struct/union/enum tidak boleh didefinisikan dalam spesifikasi jenis parameter
- Struktur, union, atau jenis enumerasi harus secara eksplisit dinyatakan di luar prototipe fungsi.
|
-
MIDL2158
|
-
Atribut [alokasikan] harus diterapkan hanya pada jenis pointer yang tidak kosong
- Atribut [alokasikan] dirancang untuk struktur data berbasis pointer yang kompleks. Ketika atribut [alokasikan] ditentukan, file stub melintasi struktur data untuk menghitung ukuran total semua objek yang dapat diakses dari pointer dan semua pointer lainnya dalam struktur data. Ubah jenis menjadi jenis pointer nonvoid atau hapus atribut [alokasikan] dan gunakan metode lain untuk menentukan ukuran alokasinya, seperti operator sizeof .
|
-
MIDL2159
|
-
array atau konstruksi penunjuk yang setara tidak dapat berasal dari union yang tidak dienkapsulasi
- Setiap serikat harus dikaitkan dengan diskriminan. Array serikat tidak diizinkan karena tidak menyediakan diskriminan terkait. Array struktur di mana struktur mengemas serikat dan diskriminannya diizinkan karena stub dapat menggunakan diskriminan untuk menentukan ukuran setiap serikat.
|
-
MIDL2160
|
-
bidang tidak boleh berasal dari tipe error_status_t
- Jenis error_status_t hanya dapat digunakan sebagai parameter atau jenis pengembalian. Ini tidak dapat disematkan di bidang struktur atau gabungan.
|
-
MIDL2161
|
-
union memiliki setidaknya satu lengan tanpa label kasus
- Deklarasi serikat tidak cocok dengan sintaks MIDL yang diperlukan untuk serikat. Setiap lengan serikat memerlukan label kasus atau label default yang memilih lengan serikat.
|
-
MIDL2162
|
-
parameter atau nilai pengembalian tidak boleh berasal dari jenis yang memiliki [abaikan] yang diterapkan padanya
- Atribut [ignore] adalah atribut bidang yang hanya dapat diterapkan ke bidang, seperti bidang struktur dan array. Atribut [ignore] menunjukkan bahwa stub tidak boleh mendereferensikan pointer selama transmisi dan tidak diizinkan ketika berkonflik dengan atribut lain yang harus didereferensikan, seperti parameter [out] dan nilai pengembalian fungsi.
|
-
MIDL2163
|
-
penunjuk sudah memiliki atribut penunjuk yang diterapkan padanya
- Hanya salah satu atribut penunjuk, [ref], [unik], atau [ptr], yang dapat diterapkan ke satu penunjuk.
|
-
MIDL2164
|
-
bidang/parameter tidak boleh berasal dari struktur yang rekursif melalui penunjuk ref
- Menurut definisi, penunjuk referensi tidak dapat diatur ke NULL. Struktur data rekursif yang ditentukan dengan penunjuk referensi tidak memiliki elemen NULL dan menurut konvensi tidak menentukan. Gunakan atribut penunjuk [unik] untuk memungkinkan struktur data menentukan elemen NULL , atau menentukan ulang struktur data sebagai struktur data yang tidak aman.
|
-
MIDL2165
|
-
penggunaan bidang yang berasal dari kebutuhan pointer yang kosong /c_ext
- Jenis void * dan jenis lain dan jenis kualifikasi yang tidak didukung oleh DCE IDL diizinkan dalam file IDL hanya ketika Anda menggunakan pengaturan kompiler default MIDL. Menggunakan sakelar /osf akan mengambil alih default ini. Jika Anda harus mengkompilasi dalam mode kompatibilitas osf, Anda harus menentukan ulang jenis penunjuk.
|
-
MIDL2166
|
-
penggunaan atribut ini membutuhkan /ms_ext
- Fitur bahasa ini adalah ekstensi Microsoft untuk DCE IDL. Anda tidak dapat menggunakan fitur ini jika Anda mengkompilasi dalam mode kompatibilitas osf ( /osf ).
|
-
MIDL2167
|
-
atribut ini hanya diperbolehkan dengan pustaka jenis format baru
- Untuk menggunakan atribut ini, Anda memerlukan versi Oleaut32.dll yang disediakan dengan Windows 2000 atau yang lebih baru.
|
-
MIDL2168
|
-
penggunaan kebutuhan wchar_t /ms_ext atau /c_ext
- Jenis karakter lebar mewakili ekstensi ke DCE IDL. Pengkompilasi MIDL tidak menerima jenis karakter lebar saat Anda menentukan sakelar /osf .
|
-
MIDL2169
|
-
bidang yang tidak disebutkan namanya memerlukan /ms_ext atau /c_ext
- DCE IDL tidak mendukung penggunaan struktur atau serikat yang tidak disebutkan namanya yang disematkan dalam struktur atau serikat lainnya. Di DCE IDL, semua bidang yang disematkan tersebut harus diberi nama. Pengkompilasi MIDL tidak mengizinkan penggunaannya saat Anda menentukan sakelar /osf .
|
-
MIDL2170
|
-
bidang yang tidak disebutkan namanya hanya dapat berasal dari jenis struct/union
- Ekstensi Microsoft ke DCE IDL yang mendukung bidang yang tidak disebutkan namanya hanya berlaku untuk struktur dan serikat. Anda harus menetapkan nama ke bidang atau menentukan ulang bidang untuk mematuhi pembatasan ini.
|
-
MIDL2171
|
-
bidang penyatuan tidak dapat berasal dari array yang sesuai/bervariasi atau setara penunjuknya
- Array yang sesuai tidak dapat muncul sendirian dalam union tetapi harus disertai dengan nilai yang menentukan ukuran array. Alih-alih menggunakan array sebagai lengan union, gunakan struktur yang terdiri dari array yang sesuai dan pengidentifikasi yang menentukan ukurannya.
|
-
MIDL2172
|
-
tidak ada atribut [pointer_default] yang ditentukan, dengan asumsi [ptr] untuk semua penunjuk yang tidak tertabut dalam antarmuka
- Implementasi IDL DCE menentukan bahwa semua pointer di setiap file IDL harus dikaitkan dengan atribut pointer. Ketika atribut pointer eksplisit tidak ditetapkan ke parameter atau jenis pointer dan tidak ada atribut [pointer_default] yang ditentukan dalam file IDL, atribut pointer penuh ptr dikaitkan dengan pointer. Anda dapat mengubah atribut penunjuk dengan menggunakan atribut penunjuk eksplisit, dengan menentukan atribut [pointer_default], atau dengan menentukan sakelar /ms_ext untuk mengubah default untuk pointer yang tidak diabaikan menjadi [unik].
|
-
MIDL2173
|
-
ekspresi inisialisasi harus diatasi ke ekspresi konstanta
- Jika ekspresi digunakan sebagai penginisialisasi, ekspresi harus berupa ekspresi konstanta. Ini berlaku di semua mode pengkompilasi MIDL. Ekspresi harus dapat diselesaikan pada waktu kompilasi. Tentukan konstanta harfiah atau ekspresi yang diselesaikan ke konstanta, bukan variabel.
|
-
MIDL2174
|
-
ekspresi atribut harus berjenis bilangan bulat, karakter, Boolean atau enum
- Tipe yang ditentukan tidak mengatasi tipe sakelar yang valid. Gunakan bilangan bulat, karakter, byte, Boolean, atau jenis enum , atau jenis yang berasal dari salah satu jenis ini.
|
-
MIDL2175
|
-
konstanta ilegal
- Konstanta yang ditentukan berada di luar rentang yang valid untuk jenis yang ditentukan.
|
-
MIDL2176
|
-
atribut tidak diimplementasikan; Diabaikan
- Atribut yang ditentukan tidak diimplementasikan dalam rilis Microsoft RPC ini. Pengkompilasi MIDL terus memproses file IDL seolah-olah atribut tidak ada.
|
-
MIDL2177
|
-
jenis return tidak boleh berasal dari penunjuk [ref]
- Nilai pengembalian fungsi yang didefinisikan sebagai jenis penunjuk harus ditentukan sebagai [unik] atau penunjuk penuh . Anda tidak dapat menggunakan penunjuk referensi.
|
-
MIDL2178
|
-
ekspresi atribut harus berupa nama variabel atau ekspresi dereferensi pointer dalam mode ini. Anda harus menentukan sakelar /ms_ext
- Pengkompilasi IDL DCE memerlukan ukuran yang terkait dengan atribut [size_is] yang akan ditentukan oleh variabel atau variabel penunjuk. Jika Anda ingin memanfaatkan ekstensi Microsoft yang memungkinkan atribut [size_is] ditentukan oleh ekspresi konstanta, Anda tidak dapat menggunakan sakelar kompiler /osf .
|
-
MIDL2179
|
-
parameter tidak boleh berasal dari gabungan nonenkapsulasi rekursif
- Serikat harus menyertakan diskriminan, sehingga serikat tidak dapat memiliki serikat lain sebagai elemen. Serikat dapat disematkan dalam serikat lain hanya ketika merupakan bagian dari struktur yang mencakup diskriminan.
|
-
MIDL2180
|
-
parameter binding-handle tidak boleh [keluar] saja
- Parameter handel yang diidentifikasi oleh pengkompilasi MIDL sebagai handel pengikatan untuk operasi ini harus berupa parameter [in]. Parameter [out]-only tidak terdefinisi pada stub klien, dan handel pengikatan harus ditentukan pada klien.
|
-
MIDL2181
|
-
penunjuk ke handel tidak boleh [unik] atau [ptr]
- Anda tidak dapat menggunakan atribut penunjuk unik dan penuh untuk penunjuk ke handel. Atribut ini memungkinkan nilai NULL, dan handel pengikatan tidak boleh NULL. Gunakan atribut [ref] untuk memperoleh parameter handle pengikatan dari penunjuk referensi.
|
-
MIDL2182
|
-
parameter yang bukan handel pengikatan tidak boleh berasal dari handle_t
- Jenis handel primitif handle_t bukan tipe data valid yang dikirimkan melalui jaringan. Ubah jenis parameter menjadi jenis selain handle_t, atau hapus parameter .
|
-
MIDL2183
|
-
akhir file yang tidak terduga ditemukan
- Pengkompilasi MIDL menemukan akhir file sebelum berhasil menyelesaikan semua elemen sintaksis file. Verifikasi bahwa karakter kurung kurawal kanan (}) yang berakhir ada di akhir file, atau periksa sintaksnya.
|
-
MIDL2184
|
-
jenis yang berasal dari handle_t tidak boleh memiliki [transmit_as] yang diterapkan padanya
- Jenis handel primitif handle_t tidak ditransmisikan melalui jaringan.
|
-
MIDL2185
|
-
[context_handle] tidak boleh diterapkan pada jenis yang memiliki [handel] yang diterapkan padanya
- Atribut [context_handle] dan [handle] tidak dapat diterapkan ke jenis yang sama.
|
-
MIDL2186
|
-
[handel] tidak boleh ditentukan pada tipe yang berasal dari kekosongan atau kekosongan *
- Jenis yang ditentukan dengan atribut [handle] dapat ditransmisikan melalui jaringan, tetapi jenis batal* bukan jenis yang dapat ditransmisikan. Jenis handel harus diselesaikan ke jenis yang berasal dari jenis dasar yang dapat ditransmisikan.
|
-
MIDL2187
|
-
parameter harus memiliki [in], [out] atau [in,out] dalam mode ini. Anda harus menentukan /ms_ext atau /c_ext
- Pengkompilasi IDL DCE mengharuskan semua parameter memiliki parameter arah eksplisit. Untuk menggunakan ekstensi Microsoft ke DCE IDL, Anda tidak dapat menggunakan sakelar /osf , yang menggantikan /ms_ext dan /c_ext.
|
-
MIDL2188
|
-
tipe yang dikirimkan tidak boleh berasal dari "kekosongan" untuk [transmit_as], [represent_as], [wire_marshal], [user_marshal]
- Atribut [transmit_as] hanya berlaku untuk jenis penunjuk. Gunakan jenis batal* sebagai ganti kekosongan.
|
-
MIDL2189
|
-
"void" harus ditentukan pada spesifikasi parameter pertama dan satu-satunya
- Kata kunci salah muncul dengan parameter fungsi lainnya. Untuk menentukan fungsi tanpa parameter, kekosongan kata kunci harus menjadi satu-satunya elemen dari daftar parameter, seperti dalam contoh berikut:
void Moo(void)
|
-
MIDL2190
|
-
[switch_is] harus ditentukan hanya pada jenis yang berasal dari gabungan yang tidak dienkapsulasi
- Kata kunci [switch_is] salah diterapkan. Ini hanya dapat digunakan dengan jenis union yang tidak dienkapsulasi.
|
-
MIDL2191
|
-
struktur stringable tidak diimplementasikan dalam versi ini
- DCE IDL memungkinkan atribut [string] untuk diterapkan ke struktur yang elemennya hanya terdiri dari karakter, byte, atau jenis yang mengatasi karakter atau byte. Fungsionalitas ini tidak didukung di Microsoft RPC. Atribut [string] tidak dapat diterapkan ke struktur secara keseluruhan. Namun, ini dapat diterapkan ke setiap array individu.
|
-
MIDL2192
|
-
jenis switch hanya dapat berupa integral, char, Boolean atau enum
- Tipe yang ditentukan tidak mengatasi tipe sakelar yang valid. Gunakan bilangan bulat, karakter, byte, Boolean, jenis enum , atau jenis yang berasal dari salah satu jenis ini.
|
-
MIDL2193
|
-
[handel] tidak boleh ditentukan pada tipe yang berasal dari handle_t
- Jenis handel harus didefinisikan menggunakan satu dan hanya satu dari jenis handel atau atribut. Gunakan jenis primitif handle_t atau atribut [handle], tetapi tidak keduanya. Jenis handel yang ditentukan pengguna harus dapat ditransmisikan, tetapi jenis handle_t tidak ditransmisikan pada jaringan.
|
-
MIDL2194
|
-
parameter yang berasal dari handle_t tidak boleh menjadi parameter [out]
- Handel jenis primitif handle_t hanya bermakna di sisi aplikasi tempat aplikasi didefinisikan. Tipe handle_t tidak ditransmisikan pada jaringan.
|
-
MIDL2195
|
-
ekspresi atribut berasal dari dereferensi pointer [unik] atau [ptr]
- Meskipun atribut [unik] dan penunjuk penuh memungkinkan penunjuk memiliki nilai NULL , ekspresi yang menentukan atribut ukuran atau panjang tidak boleh memiliki nilai NULL . Saat pointer digunakan, MIDL membatasi ekspresi ke penunjuk [ref].
|
-
MIDL2196
|
-
"cpp_quote" memerlukan /ms_ext
- Atribut cpp_quote adalah ekstensi Microsoft ke DCE IDL. Jangan gunakan sakelar pengkompilasi MIDL /osf, yang menggantikan /ms_ext.
|
-
MIDL2197
|
-
uuid yang dikutip memerlukan /ms_ext
- Kemampuan untuk menentukan nilai UUID dalam tanda kutip adalah ekstensi Microsoft ke DCE IDL. Jangan gunakan sakelar pengkompilasi MIDL /osf, yang menggantikan /ms_ext.
|
-
MIDL2198
|
-
jenis return tidak dapat berasal dari union yang tidak dienkapsulasi
- Union yang tidak dienkapsulasi tidak dapat digunakan sebagai jenis pengembalian fungsi. Untuk mengembalikan jenis union, tentukan jenis union sebagai parameter [out] atau [in, out].
|
-
MIDL2199
|
-
tipe pengembalian tidak dapat berasal dari struktur yang sesuai
- Ukuran jenis pengembalian harus berupa konstanta. Anda tidak dapat menentukan sebagai jenis pengembalian struktur yang berisi array yang sesuai bahkan ketika struktur juga menyertakan penentu ukurannya. Untuk mengembalikan struktur yang sesuai, tentukan struktur sebagai parameter [out] atau [in, out].
|
-
MIDL2200
|
-
[transmit_as] tidak boleh diterapkan pada jenis yang berasal dari handel generik
- Dalam rilis ini, atribut [handle] dan [transmit_as] tidak dapat digabungkan pada jenis yang sama.
|
-
MIDL2201
|
-
[handel] tidak boleh diterapkan pada jenis yang telah [transmit_as] diterapkan padanya
- Dalam rilis ini, atribut [handle] dan [transmit_as] tidak dapat digabungkan pada jenis yang sama.
|
-
MIDL2202
|
-
jenis yang ditentukan untuk deklarasi const tidak valid
- Deklarasi konstanta terbatas pada tipe bilangan bulat, karakter, karakter lebar, string, dan Boolean.
|
-
MIDL2203
|
-
operan ke operator sizeof tidak didukung
- Pengkompilasi MIDL hanya mendukung operasi sizeof untuk jenis sederhana. Operand yang ditentukan tidak mengevaluasi ke tipe bilangan bulat.
|
-
MIDL2204
|
-
nama ini sudah digunakan sebagai nama pengidentifikasi const
- Pengidentifikasi sebelumnya telah digunakan untuk mengidentifikasi konstanta dalam deklarasi kontras . Ubah nama salah satu pengidentifikasi sehingga pengidentifikasi unik.
|
-
MIDL2205
|
-
pendefinisian ulang jenis error_status_t yang tidak konsisten
- Jenis error_status_t harus mengatasi jenis yang panjangnya tidak ditandatangani. Definisi tipe lainnya tidak dapat digunakan.
|
-
MIDL2206
|
-
[case] nilai di luar rentang jenis sakelar
- Nilai yang terkait dengan kasus pernyataan pengalihan berada di luar rentang untuk jenis sakelar yang ditentukan. Misalnya, kesalahan ini terjadi ketika nilai bilangan bulat panjang digunakan dalam pernyataan kasus untuk jenis bilangan bulat pendek.
|
-
MIDL2207
|
-
parameter yang berasal dari kebutuhan wchar_t /ms_ext
- Jenis karakter lebar wchar_t adalah ekstensi Microsoft untuk DCE IDL. Jangan gunakan sakelar pengkompilasi MIDL /osf, yang mengambil alih /ms_ext
|
-
MIDL2208
|
-
antarmuka ini hanya memiliki panggilan balik
- Panggilan balik hanya valid dalam konteks panggilan prosedur jarak jauh. Antarmuka harus menyertakan setidaknya satu prototipe fungsi untuk panggilan prosedur jarak jauh yang tidak menyertakan atribut [panggilan balik].
|
-
MIDL2209
|
-
atribut yang ditentukan secara berlebihan; Diabaikan
- Atribut yang ditentukan telah diterapkan lebih dari sekali. Beberapa instans dari atribut yang sama diabaikan.
|
-
MIDL2210
|
-
jenis handel konteks yang digunakan untuk handel implisit
- Jenis yang didefinisikan menggunakan atribut [context_handle] telah ditentukan sebagai jenis handel dalam atribut [ implicit_handle]. Atribut tidak dapat digabungkan dengan cara ini.
|
-
MIDL2211
|
-
opsi yang bertentangan ditentukan untuk [alokasikan]
- Opsi yang ditentukan untuk atribut ACF [alokasikan] mewakili arahan yang bertentangan. Misalnya, tentukan opsi all_nodes atau opsi single_node, tetapi tidak keduanya.
|
-
MIDL2212
|
-
kesalahan saat menulis ke file
- Terjadi kesalahan saat menulis ke file. Kondisi ini dapat disebabkan oleh kesalahan yang berkaitan dengan ruang disk, handel file, pembatasan akses file, dan kegagalan perangkat keras.
|
-
MIDL2213
|
-
tidak ada jenis sakelar yang ditemukan pada definisi union, menggunakan jenis [switch_is]
- Definisi serikat tidak menyertakan atribut [switch_type] eksplisit. Jenis variabel yang ditentukan oleh atribut [switch_is] digunakan sebagai jenis sakelar.
|
-
MIDL2214
|
-
pemeriksaan semantik tidak lengkap karena kesalahan sebelumnya
- Pengkompilasi MIDL membuat dua lolos ke file input untuk menyelesaikan deklarasi penerusan apa pun. Karena kesalahan yang ditemui selama pass pertama, pemeriksaan untuk pass kedua belum dilakukan. Kesalahan yang tidak dilaporkan yang berkaitan dengan deklarasi penerusan mungkin masih ada dalam file.
|
-
MIDL2215
|
-
menangani parameter atau jenis pengembalian tidak didukung pada prosedur [panggilan balik]
- Prosedur [panggilan balik] terjadi dalam konteks panggilan dari klien ke server dan menggunakan handel pengikatan yang sama dengan panggilan asli. Parameter handel pengikatan eksplisit atau jenis pengembalian tidak diizinkan dalam fungsi panggilan balik.
|
-
MIDL2216
|
-
[ptr] tidak mendukung alias dalam versi ini
- Alias terjadi ketika data dapat diakses melalui lebih dari satu nama pointer atau variabel. Hapus alias. Untuk informasi selengkapnya, lihat Penunjuk Unik.
|
-
MIDL2217
|
-
parameter sudah didefinisikan sebagai handel konteks
- Parameter sebelumnya didefinisikan sebagai handel konteks.
|
-
MIDL2218
|
-
[context_handle] tidak boleh berasal dari handle_t
- Tiga karakteristik handel: jenis handle_t, atribut [handle], dan atribut [context_handle], saling eksklusif. Hanya satu karakteristik yang dapat diterapkan ke jenis atau parameter pada satu waktu.
|
-
MIDL2219
|
-
ukuran array melebihi 65536 byte
- Pada beberapa platform Microsoft, ukuran data maksimum yang dapat ditransmisikan adalah 64K. Desain ulang aplikasi Anda sehingga semua data yang dikirimkan sesuai dengan ukuran maksimum yang dapat ditransmisikan.
|
-
MIDL2220
|
-
ukuran struktur melebihi 65536 byte
- Pada beberapa platform Microsoft, ukuran data maksimum yang dapat ditransmisikan adalah 64K. Desain ulang aplikasi Anda sehingga semua data yang dikirimkan sesuai dengan ukuran maksimum yang dapat ditransmisikan.
|
-
MIDL2221
|
-
bidang dari gabungan yang tidak dienkapsulasi tidak boleh menjadi serikat nonenkapsulasi lain
- Serikat yang ditransmisikan sebagai bagian dari panggilan prosedur jarak jauh memerlukan item data terkait, diskriminan, yang memilih lengan gabungan. Serikat yang bersarang di serikat lain tidak menawarkan diskriminan; akibatnya, mereka tidak dapat ditransmisikan dalam formulir ini. Buat struktur yang terdiri dari serikat dan diskriminannya.
|
-
MIDL2222
|
-
atribut penunjuk diterapkan pada array yang disematkan; Diabaikan
- Atribut penunjuk hanya dapat diterapkan ke array saat array adalah parameter tingkat atas. Atribut penunjuk lain yang diterapkan ke array yang disematkan dalam struktur data lain diabaikan.
|
-
MIDL2223
|
-
[alokasikan] ilegal pada jenis yang dikirimkan atau disajikan untuk [transmit_as], [represent_as], [wire_marshal], atau [user_marshal]
- Atribut [transmit_as] dan [alokasikan] keduanya tidak dapat diterapkan ke jenis yang sama. Atribut [transmit_as] membedakan antara jenis yang disajikan dan dikirimkan, sementara atribut [alokasikan] mengasumsikan bahwa jenis yang disajikan sama dengan jenis yang dikirimkan.
|
-
MIDL2224
|
[switch_type] harus ditentukan dalam mode impor ini
|
-
MIDL2225
|
-
Jenis [implicit_handle] tidak terdefinis; dengan asumsi handel generik
- Jenis handel yang ditentukan dalam ACF tidak ditentukan dalam file IDL. Pengompilasi MIDL mengasumsikan bahwa jenis handel diselesaikan ke jenis handel primitif handle_t. Tambahkan atribut [handel] ke definisi jenis jika Anda ingin handel bersifat seperti handel yang ditentukan pengguna atau generik.
|
-
MIDL2226
|
-
Elemen array tidak boleh berasal dari error_status_t
- Dalam rilis Microsoft RPC ini, jenis error_status_t hanya dapat muncul sebagai parameter atau jenis pengembalian. Ini tidak dapat muncul dalam array.
|
-
MIDL2227
|
-
[alokasikan] ilegal pada jenis yang berasal dari handel primitif/generik/konteks
- Secara desain, atribut ACF [alokasikan] tidak dapat diterapkan untuk menangani jenis.
|
-
MIDL2228
|
-
jenis yang dikirimkan atau disajikan tidak boleh berasal dari error_status_t
- Dalam rilis Microsoft RPC ini, jenis error_status_t tidak dapat digunakan dengan atribut [transmit_as].
|
-
MIDL2229
|
-
diskriminan dari serikat tidak boleh berasal dari bidang dengan [abaikan] yang diterapkan padanya
- Serikat yang digunakan dalam panggilan prosedur jarak jauh harus dikaitkan dengan item data lain, yang disebut diskriminan, yang memilih lengan gabungan. Diskriminan harus ditransmisikan. Atribut [ignore] tidak dapat diterapkan ke diskriminan serikat.
|
-
MIDL2230
|
-
[nocode] diabaikan untuk sisi server karena "/server none" tidak ditentukan
- Beberapa pengkompilasi IDL DCE menghasilkan kesalahan ketika atribut [nocode] diterapkan ke prosedur di antarmuka tempat file stub server dibuat. Karena server harus mendukung semua operasi, [nocode] tidak boleh diterapkan pada prosedur dalam mode ini, atau Anda harus menggunakan sakelar kompiler MIDL /server tidak ada untuk secara eksplisit menentukan bahwa tidak ada rutinitas server yang akan dihasilkan.
|
-
MIDL2231
|
-
tidak ada prosedur jarak jauh yang ditentukan dalam antarmuka non-[lokal]; tidak ada stub klien/server yang akan dihasilkan
- Antarmuka yang disediakan tidak memiliki prosedur jarak jauh, jadi hanya file header yang akan dihasilkan.
|
-
MIDL2232
|
-
terlalu banyak kasus default yang ditentukan untuk penyatuan yang dienkapsulasi
- Union yang dienkapsulasi hanya dapat memiliki satu default: arm.
|
-
MIDL2233
|
-
terlalu banyak antarmuka default yang ditentukan untuk coclass
-
Kolase dapat memiliki paling banyak dua anggota [default], satu untuk mewakili antarmuka (sumber) keluar atau dispinterface, dan satu untuk mewakili antarmuka masuk (sink) atau dispinterface.
|
-
MIDL2234
|
-
item dengan [defaultvtable] juga harus memiliki [source]
- Antarmuka defaultvtable membuat antarmuka sumber kedua untuk objek, yang memungkinkan sink menerima peristiwa melalui tabel V.
|
-
MIDL2235
|
-
spesifikasi serikat tanpa bidang yang ilegal
- Serikat harus memiliki setidaknya satu bidang.
|
-
MIDL2236
|
-
nilai di luar rentang
- Nilai kasus yang disediakan berada di luar rentang jenis sakelar.
|
-
MIDL2237
|
-
[context_handle] harus diterapkan pada jenis pointer
- Handel konteks harus selalu berupa jenis penunjuk. DCE menentukan bahwa semua handel konteks harus di ketik sebagai batal *.
|
-
MIDL2238
|
-
jenis pengembalian tidak boleh berasal dari handle_t
-
handle_t tidak dapat dikembalikan.
|
-
MIDL2239
|
-
[handel] tidak boleh diterapkan ke jenis yang berasal dari handel konteks
- Jenis tidak boleh berupa handel konteks dan handel generik.
|
-
MIDL2240
|
-
bidang yang berasal dari "int" harus memiliki penentu ukuran "kecil", "pendek", atau "panjang" dengan "int"
- Int jenis tidak dapat ditransmisikan pada sistem 16-bit, karena ukuran int mungkin berbeda di seluruh mesin.
|
-
MIDL2241
|
-
bidang tidak boleh berasal dari kekosongan atau kekosongan *
-
void dan void * tidak dapat digunakan sebagai jenis parameter untuk prosedur jarak jauh.
|
-
MIDL2242
|
-
bidang tidak boleh berasal dari struktur yang berisi bit-fields
- Struktur yang berisi bidang bit tidak dapat digunakan sebagai parameter atau jenis pengembalian untuk prosedur jarak jauh.
|
-
MIDL2243
|
-
bidang tidak boleh berasal dari union yang tidak dapat di rpcable
- Serikat harus ditentukan sebagai gabungan yang tidak dienkapsulasi atau serikat yang dienkapsulasi agar dapat ditransmisikan. Serikat C biasa tidak memiliki diskriminan yang diperlukan untuk mengirimkan serikat di seluruh jaringan.
|
-
MIDL2244
|
-
bidang tidak boleh berasal dari penunjuk ke fungsi
- Penunjuk ke fungsi tidak dapat ditransmisikan ke prosedur jarak jauh. Penunjuk ke fungsi menunjuk ke kode fungsi, dan tidak ada kode fungsi yang dapat ditransmisikan di seluruh jaringan menggunakan RPC.
|
-
MIDL2245
|
-
tidak dapat menggunakan [fault_status] pada parameter dan jenis pengembalian
- Atribut [fault_status] hanya dapat digunakan sekali per prosedur. Atribut [comm_status] dapat digunakan secara independen.
|
-
MIDL2246
|
-
jenis return terlalu rumit untuk mode /Oi, menggunakan /Os
- Jenis pengembalian besar yang diteruskan oleh nilai hanya dapat ditangani oleh ganja pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os .
|
-
MIDL2247
|
-
jenis handel generik terlalu besar untuk mode /Oi, menggunakan /Os
- Jenis handel generik besar yang diteruskan oleh nilai hanya dapat ditangani oleh ganja pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os .
|
-
MIDL2248
|
-
[alokasikan(all_nodes)] pada parameter [in,out] dapat meng-orphan memori asli
- Penggunaan [allocate(all_nodes)] pada parameter [in, out] harus mengalokasikan kembali memori yang berdampingan untuk arah [out], sehingga tanpa induk parameter [in]. Penggunaan ini tidak disarankan.
|
-
MIDL2249
|
-
tidak dapat memiliki pointer [ref] sebagai lengan union
- Penunjuk referensi harus selalu menunjuk ke memori yang valid, tetapi union [in, out] dengan penunjuk referensi dapat mengembalikan penunjuk referensi saat arah [in] menggunakan jenis lain.
|
-
MIDL2250
|
-
return of context handles tidak didukung untuk mode /Oi, menggunakan /Os
- MIDL tidak mendukung handel konteks dalam mode pengoptimalan yang ditafsirkan sepenuhnya. Beralih ke pengoptimalan mode campuran.
|
-
MIDL2251
|
-
penggunaan parameter [comm_status] atau [fault_status] tambahan yang tidak didukung untuk mode /Oi, menggunakan /Os
- Atribut [comm_status] dan [fault_status] hanya dapat ditangani oleh ganja pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os .
|
-
MIDL2252
|
-
penggunaan jenis yang tidak diketahui untuk [represent_as] atau [user_marshal] tidak didukung untuk mode /Oi, menggunakan /Os
- Penggunaan atribut [represent_as] dengan jenis lokal yang tidak ditentukan dalam file IDL atau file IDL yang diimpor hanya dapat ditangani oleh stub pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os .
|
-
MIDL2253
|
-
jenis array dengan [transmit_as] atau [represent_as] tidak didukung pada jenis pengembalian untuk mode /Oi , menggunakan /Os
- Mengembalikan array dengan [transmit_as] atau [represent_as] yang diterapkan hanya dapat ditangani oleh stub pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os .
|
-
MIDL2254
|
-
jenis array dengan [transmit_as] atau [represent_as] tidak didukung pass-by-value untuk mode /Oi, menggunakan /Os
- Tindakan ini tidak didukung untuk pengoptimalan yang ditafsirkan sepenuhnya. Beralih ke pengoptimalan mode campuran.
|
-
MIDL2255
|
-
[panggilan balik] memerlukan /ms_ext
- Atribut [callback] adalah ekstensi Microsoft dan mengharuskan sakelar /ms_ext diaktifkan. Jangan kompilasi dengan /osf, yang mengambil alih /ms_ext.
|
-
MIDL2256
|
-
dependensi antarmuka melingkar
- Antarmuka ini menggunakan dirinya sendiri (secara langsung atau tidak langsung) sebagai antarmuka dasar.
|
-
MIDL2257
|
-
hanya IUnknown yang dapat digunakan sebagai antarmuka akar
- Saat ini, semua antarmuka harus memiliki IUnknown sebagai antarmuka akar.
|
-
MIDL2258
|
-
[IID_IS] hanya dapat diterapkan pada penunjuk ke antarmuka
- Atribut [iid_is] hanya dapat diterapkan ke penunjuk antarmuka, meskipun dapat ditentukan sebagai penunjuk ke IUnknown *.
|
-
MIDL2259
|
-
antarmuka hanya dapat digunakan dalam konstruksi pointer-to-interface
- Nama antarmuka tidak dapat digunakan kecuali sebagai antarmuka dasar atau penunjuk antarmuka.
|
-
MIDL2260
|
-
penunjuk antarmuka harus memiliki UUID/IID
- Jenis dasar ekspresi [iid_is] harus merupakan jenis UUID/GUID/IID.
|
-
MIDL2261
|
-
definisi dan deklarasi di luar isi antarmuka memerlukan /ms_ext
- Menempatkan deklarasi dan definisi di luar isi antarmuka apa pun adalah ekstensi Microsoft dan memerlukan penggunaan sakelar /ms_ext .
|
-
MIDL2262
|
-
beberapa antarmuka dalam satu file memerlukan /ms_ext
- Menggunakan beberapa antarmuka dalam satu file idl adalah ekstensi Microsoft dan tidak tersedia saat Anda mengkompilasi dalam mode /osf .
|
-
MIDL2263
|
-
Hanya salah satu dari [implicit_handle], [auto_handle], atau [explicit_handle] yang diperbolehkan
- Setiap antarmuka hanya dapat memiliki salah satu dari tiga atribut ini.
|
-
MIDL2264
|
-
[implicit_handle] mereferensikan jenis yang bukan handel
- Handel implisit harus salah satu jenis handel.
|
-
MIDL2265
|
-
[object] procs hanya dapat digunakan dengan "/env win32"
- Antarmuka dengan atribut [objek] tidak dapat digunakan dengan lingkungan 16-bit.
|
-
MIDL2266
|
-
[callback] dengan -env dos/win16 tidak didukung untuk /Oi, menggunakan /Os
- Panggilan balik di lingkungan 16-bit hanya dapat ditangani oleh ganja pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os .
|
-
MIDL2267
|
-
float/double tidak didukung sebagai parameter tingkat atas untuk mode /Oi, menggunakan /Os
- Jenis float dan ganda hanya dapat ditangani sebagai parameter oleh stub pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os . Jenis float dan ganda dalam struktur, array, atau serikat masih dapat ditangani dengan/Os.
|
-
MIDL2268
|
-
penunjuk ke handel konteks mungkin tidak digunakan sebagai nilai pengembalian
- Handel konteks harus digunakan sebagai nilai pengembalian langsung, bukan nilai pengembalian tidak langsung.
|
-
MIDL2269
|
-
prosedur dalam antarmuka objek harus mengembalikan HRESULT
- Semua prosedur dalam antarmuka objek yang tidak memiliki atribut -[local] harus mengembalikan HRESULT/SCODE.
|
-
MIDL2270
|
-
UUID duplikat
- Sama seperti UUID harus unik.
|
-
MIDL2271
|
-
Antarmuka [objek] harus berasal dari antarmuka [objek] lain seperti IUnknown
- Pewarisan antarmuka hanya diperbolehkan saat Anda menggunakan antarmuka objek.
|
-
MIDL2272
|
-
Antarmuka (asinkron) harus berasal dari antarmuka (asinkron) lain
- Antarmuka objek, baik sinkron maupun asinkron, harus berasal dari IUnknown atau beberapa antarmuka OLE dasar lainnya.
|
-
MIDL2273
|
-
Ekspresi [IID_IS] harus berupa penunjuk ke struktur IID
- Jenis dasar ekspresi [iid_is] harus merupakan jenis UUID/GUID/IID.
|
-
MIDL2274
|
-
Jenis [call_as] harus berupa prosedur [lokal]
- Target jenis [call_as], jika ditentukan, harus memiliki [ lokal] yang diterapkan.
|
-
MIDL2275
|
-
undefined [call_as] tidak boleh digunakan dalam antarmuka objek
- Anda harus menentukan target jenis [call_as]. Pastikan Anda telah menyediakan call_as rutinitas untuk panggilan dan aplikasi yang disebut.
|
-
MIDL2276
|
-
[auto_handle] tidak dapat digunakan dengan [encode] atau [decode]
- Atribut [ encode] dan [ decode] hanya dapat digunakan dengan handel eksplisit atau handel implisit.
|
-
MIDL2277
|
-
prosedur normal tidak diizinkan dalam antarmuka dengan [encode] atau [dekode]
- Antarmuka yang berisi prosedur [encode] atau [dekode] juga tidak dapat memiliki prosedur jarak jauh.
|
-
MIDL2278
|
-
kesuaian atau varians tingkat atas tidak diizinkan dengan [encode] atau [dekode]
- Jenis yang memiliki kesuaian atau varians tingkat atas tidak dapat menggunakan serialisasi jenis, karena tidak ada cara untuk memberikan ukuran/pemanjangan. Struktur yang berisinya, bagaimanapun, diizinkan untuk menggunakan serialisasi jenis.
|
-
MIDL2279
|
-
Parameter [out] mungkin tidak memiliki "const"
- Karena parameter [keluar] diubah, parameter tidak boleh dinyatakan sebagai konstanta sa.
|
-
MIDL2280
|
-
mengembalikan nilai mungkin tidak memiliki "const"
- Karena nilai fungsi diatur ketika fungsi kembali, nilai ini tidak boleh dinyatakan sebagai konstanta.
|
-
MIDL2281
|
-
penggunaan atribut "retval" tidak valid
- Periksa untuk memastikan Anda belum menggunakan atribut [opsional] dan bahwa parameter [retval] adalah parameter terakhir dalam daftar.
|
-
MIDL2282
|
-
beberapa konvensi panggilan ilegal
- Hanya satu konvensi panggilan yang dapat diterapkan ke satu prosedur.
|
-
MIDL2283
|
-
atribut ilegal pada prosedur [objek]
- Atribut di atas hanya berlaku untuk prosedur di antarmuka yang tidak memiliki atribut [objek].
|
-
MIDL2284
|
-
[out] penunjuk antarmuka harus menggunakan tidak langsung ganda
- Karena nilai yang diubah adalah penunjuk ke antarmuka, harus ada tingkat tidak langsung lain di atas penunjuk untuk memungkinkannya dikembalikan.
|
-
MIDL2285
|
-
prosedur yang digunakan dua kali sebagai pemanggil di [call_as]
- Prosedur [lokal] tertentu hanya dapat digunakan sekali sebagai target [call_as], untuk menghindari bentrokan nama.
|
-
MIDL2286
|
-
[call_as] target harus memiliki [lokal] dalam antarmuka objek
- Target [call_as] harus merupakan prosedur [lokal] yang ditentukan di antarmuka saat ini.
|
-
MIDL2287
|
-
[code] dan [nocode] mungkin tidak digunakan bersamaan
- Kedua atribut ini bertentangan dan tidak dapat digunakan bersama-sama.
|
-
MIDL2288
|
-
prosedur dengan atribut [mungkin] atau [pesan] mungkin tidak memiliki param [out], atau nilai yang dikembalikan harus berjenis HRESULT atau error_status_t
- Karena [mungkin] prosedur tidak pernah kembali, tidak ada cara untuk mendapatkan nilai yang dikembalikan.
|
-
MIDL2289
|
-
penunjuk ke fungsi harus digunakan
- Meskipun definisi jenis fungsi diizinkan dalam mode /c_ext , definisi tersebut hanya dapat digunakan sebagai penunjuk ke fungsi. Mereka tidak pernah dapat ditransmisikan sebagai parameter atau nilai pengembalian dari prosedur jarak jauh.
|
-
MIDL2290
|
-
fungsi mungkin tidak diteruskan dalam operasi RPC
- Fungsi dan penunjuk fungsi tidak dapat diteruskan sebagai parameter atau mengembalikan nilai prosedur jarak jauh.
|
-
MIDL2291
|
-
hyper/double tidak didukung sebagai nilai pengembalian untuk mode /Oi, menggunakan /Os
- Nilai pengembalian hyper dan ganda hanya dapat ditangani oleh ganja pengoptimalan /Os . Rintangan untuk rutinitas ini akan dihasilkan menggunakan pengoptimalan /Os .
|
-
MIDL2292
|
-
#pragma pack(pop) tanpa #pragma pack(push) yang cocok
- #pragma pack(push) dan #pragma pack(pop) harus muncul dalam pasangan yang cocok. Setidaknya satu terlalu banyak paket #pragma (push) ditentukan.
|
-
MIDL2293
|
-
bidang struktur yang dapat di-string harus byte/char/wchar_t
- Jenis [string] hanya dapat diterapkan ke struktur yang bidangnya semuanya berjenis byte, atau definisi jenis yang setara dengan byte.
|
-
MIDL2294
|
-
[pemberitahuan] tidak didukung untuk mode /Oi, menggunakan /Os
- Atribut [pemberitahuan] hanya dapat diproses oleh ganja pengoptimalan /Os .
|
-
MIDL2295
|
-
menangani parameter atau jenis pengembalian tidak didukung pada prosedur di antarmuka [objek]
- Handel tidak dapat digunakan dengan antarmuka [ objek].
|
-
MIDL2296
|
-
ANSI C hanya memungkinkan array paling kiri terikat untuk tidak ditentukan
- Dalam array yang sesuai, ANSI C hanya memungkinkan array paling kiri (paling signifikan) yang terikat untuk tidak ditentukan. Jika beberapa dimensi sesuai, MIDL akan mencoba menempatkan "1" di dimensi lain yang sesuai. Jika dimensi lain didefinisikan dalam definisi jenis yang berbeda, ini tidak dapat dimungkinkan. Coba letakkan semua dimensi array pada deklarasi array untuk menghindari hal ini. Bagaimanapun, waspadai perhitungan pengindeksan array yang dilakukan oleh pengkompilasi; Anda mungkin perlu melakukan perhitungan Anda sendiri menggunakan ukuran aktual.
|
-
MIDL2297
|
-
parameter union by-value tidak didukung untuk mode /Oi, menggunakan /Os
- Tindakan ini tidak didukung untuk pengoptimalan yang ditafsirkan sepenuhnya. Beralih ke pengoptimalan mode campuran.
|
-
MIDL2298
|
-
Atribut [version] diabaikan pada antarmuka [objek]
- Atribut [objek] mengidentifikasi antarmuka COM. Daftar atribut antarmuka untuk antarmuka COM tidak dapat menyertakan atribut [ versi].
|
-
MIDL2299
|
-
Atribut [size_is] atau [max_is] tidak valid pada array tetap
- Array dengan ukuran tetap tidak dapat menggunakan atribut size_is atau max_is .
|
-
MIDL2300
|
-
[encode] atau [dekode] tidak valid dalam antarmuka [objek]
- Atribut [objek] mengidentifikasi antarmuka COM. Atribut [encode] dan [ decode] memungkinkan serialisasi. Artinya, Anda dapat menyediakan dan mengontrol buffer untuk data marshal dan unmarshal, namun, Anda tidak dapat melakukan serialisasi pada antarmuka COM.
|
-
MIDL2301
|
-
[encode] atau [dekode] pada jenis memerlukan /ms_ext
- Serialisasi bukan bagian dari spesifikasi DCE-IDL. Ini adalah ekstensi Microsoft yang memerlukan penggunaan sakelar baris perintah /ms_ext .
|
-
MIDL2302
|
-
int tidak didukung pada /env win16 atau /env dos
- Platform Microsoft 16-bit tidak mendukung penggunaan jenis int dalam file IDL. Memenuhi syarat jenis int dengan kecil, pendek, atau panjang.
|
-
MIDL2303
|
-
[bstring] hanya dapat diterapkan ke pointer ke "char" atau "whchar_t"
- Kesalahan ini kedaluarsa. Ini disediakan hanya untuk kompatibilitas mundur.
|
-
MIDL2304
|
-
atribut tidak valid pada prosedur dalam antarmuka [objek]
- Atribut yang ditentukan tidak diizinkan pada prosedur dalam antarmuka COM.
|
-
MIDL2305
|
-
atribut tidak valid pada antarmuka [objek]
- Atribut yang ditentukan tidak diperbolehkan dalam antarmuka COM.
|
-
MIDL2306
|
-
terlalu banyak parameter atau tumpukan terlalu besar untuk mode /Oi, menggunakan /Os
- Peringatan ini usang. Ini disediakan hanya untuk kompatibilitas mundur. Ini menunjukkan bahwa panggilan ke prosedur jarak jauh menyebabkan tumpukan tumbuh lebih besar dari 64 K.
|
-
MIDL2307
|
-
tidak ada atribut pada typedef file ACF, jadi tidak ada efek
- File IDL harus berisi semua pernyataan typedef yang tidak memiliki atribut. Mereka tidak boleh terjadi dalam file ACF. Jika demikian, pengkompilasi MIDL menafsirkannya sebagai berlebihan dan mengabaikannya.
|
-
MIDL2308
|
-
konvensi panggilan selain __stdcall atau __cdecl tidak didukung untuk mode /Oi, menggunakan /Os
- Konvensi panggilan seperti __pascal atau __fastcall mengubah format tumpukan. Mode /Oi hanya mendukung konvensi panggilan __stdcall dan __cdecl . Jika Anda harus menggunakan konvensi panggilan lain, gunakan mode /Os .
|
-
MIDL2309
|
-
Terlalu banyak metode delegasi dalam antarmuka, memerlukan Windows 2000 atau lebih tinggi
- Satu antarmuka dapat mewarisi dari antarmuka lain. Ketika itu terjadi, metode antarmuka dasar dianggap didelegasikan. Tidak ada antarmuka turunan yang dapat berisi lebih dari 256 metode yang didelegasikan.
|
-
MIDL2310
|
-
handel otomatis tidak didukung dengan /env mac atau /env powermac
- Saat mengkompilasi file IDL untuk PowerMac, Anda tidak dapat menggunakan handel pengikatan otomatis. Anda harus menentukan handel eksplisit atau implisit.
|
-
MIDL2311
|
-
pernyataan di luar blok pustaka ilegal dalam mode kompatibilitas mktyplib
- Anda mungkin perlu menentukan sakelar baris perintah /mktyplib203 saat mengkompilasi file IDL Anda.
Catatan:
Alat Mktyplib.exe usang. Gunakan pengkompilasi MIDL sebagai gantinya.
|
-
MIDL2312
|
-
sintaks ilegal kecuali menggunakan mode kompatibilitas mktyplib
- Anda mungkin perlu menentukan sakelar baris perintah /mktyplib203 saat mengkompilasi file IDL Anda.
Catatan:
Alat Mktyplib.exe usang. Gunakan pengkompilasi MIDL sebagai gantinya.
|
-
MIDL2313
|
-
definisi ilegal, harus menggunakan typedef dalam mode kompatibilitas mktyplib
- Anda mungkin perlu menentukan sakelar baris perintah /mktyplib203 saat mengkompilasi file IDL Anda.
Catatan:
Alat Mktyplib.exe usang. Gunakan pengkompilasi MIDL sebagai gantinya.
|
-
MIDL2314
|
-
atribut pointer eksplisit [ptr] [ref] diabaikan untuk penunjuk antarmuka
- Penunjuk ke antarmuka tidak boleh memiliki atribut IDL.
|
-
MIDL2315
|
Mode /Oi tidak diimplementasikan untuk PowerMac, beralih ke /Os
|
-
MIDL2316
|
-
jenis ekspresi ilegal yang digunakan dalam atribut
- Nilai default untuk penunjuk harus berupa konstanta.
|
-
MIDL2317
|
-
jenis ilegal yang digunakan dalam pipa
- Pipa terbatas pada jenis data IDL dasar. Misalnya, Anda tidak dapat menentukan pipa array.
|
-
MIDL2318
|
-
prosedur menggunakan pipa, menggunakan /Oicf
- Mode yang Anda pilih tidak mendukung pipa. Kompilator MIDL mendeteksi penggunaan satu atau beberapa pipa di antarmuka Anda. Oleh karena itu, ini mengkompilasi file IDL Anda dalam mode /Oicf .
|
-
MIDL2319
|
-
prosedur memiliki atribut yang memerlukan penggunaan /Oif, mode peralihan
- Anda harus mengkompilasi prosedur [asinkron] dalam mode /Oif .
|
-
MIDL2320
|
-
persyaratan pengoptimalan yang bertentangan, tidak dapat mengoptimalkan
- Kesalahan ini sering menunjukkan bahwa Anda menentukan mode pengkompilasi MIDL /Os dan /Oi (atau varian /Oi). Ini juga dapat berarti bahwa fitur yang Anda tentukan dalam file IDL dan ACL Memerlukan penggunaan kedua mode. Anda harus memilih satu mode atau mode lainnya untuk dioptimalkan.
|
-
MIDL2321
|
-
pipa tidak boleh berupa elemen array, atau anggota struktur atau serikat
- Jenis data pipa hanya dapat menjadi parameter tingkat atas.
|
-
MIDL2322
|
-
penggunaan pipa tidak valid
- Anda tidak dapat menggunakan pipa dengan atribut [transmit_as], [represent_as], atau [user_marshal]. Selain itu, pipa tidak dapat digunakan sebagai jenis pengembalian.
|
-
MIDL2323
|
-
fitur memerlukan opsi pengoptimalan yang ditafsirkan tingkat lanjut; gunakan -Oicf
- Kesalahan ini menunjukkan bahwa sakelar baris perintah pengompilasi MIDL seperti /robust memerlukan penggunaan mode /Oicf .
|
-
MIDL2324
|
-
fitur memerlukan opsi pengoptimalan yang ditafsirkan tingkat lanjut; gunakan -Oicf
- Peringatan ini menunjukkan bahwa sakelar baris perintah pengompilasi MIDL seperti /robust memerlukan penggunaan mode /Oicf .
|
-
MIDL2329
|
-
opsi pengoptimalan sedang dihapus, gunakan -Oic
- Mode pengoptimalan /Oi1 ditentukan pada baris perintah MIDL. Mode ini tidak lagi didukung dan /Oicf harus digunakan sebagai gantinya.
|
-
MIDL2330
|
-
opsi pengoptimalan sedang dihapus, gunakan -Oicf
- Mode pengoptimalan /Oi2 ditentukan pada baris perintah MIDL. Mode ini tidak lagi didukung dan /Oicf harus digunakan sebagai gantinya.
|
-
MIDL2331
|
-
opsi pengoptimalan sedang dihapus, gunakan -ic
- Mode pengoptimalan i1 ditentukan dalam atribut ACF [optimize]. Mode ini tidak lagi didukung dan icf harus digunakan sebagai gantinya.
Contoh file ACF:
[optimize("i1")] roo(); //MIDL 2331
|
-
MIDL2332
|
-
opsi pengoptimalan sedang dihapus, gunakan -icf
- Mode pengoptimalan i2 ditentukan dalam atribut ACF [optimize]. Mode ini tidak lagi didukung dan icf harus digunakan sebagai gantinya.
Contoh file ACF:
[optimize("i2")] roo(); //MIDL 2332
|
-
MIDL2333
|
-
switch -old dan -new sudah usang, gunakan -oldtlb dan -newtlb
- Pesan ini usang dan tidak lagi dihilangkan oleh MIDL.
|
-
MIDL2334
|
-
nilai argumen ilegal
- Varian sakelar baris perintah /O yang diizinkan meliputi /Os, /Oi, /Oic, /Oicf, dan /Oif.
|
-
MIDL2335
|
-
jenis ekspresi ilegal dalam konstanta
- Ekspresi tidak mengevaluasi ke konstanta.
|
-
MIDL2336
|
-
jenis ekspresi ilegal dalam enum
- Nilai enumerasi dalam definisi enum tidak mengevaluasi ke jenis integral.
|
-
MIDL2337
|
-
deklarasi maju yang tidak puas
- Pengkompilasi MIDL tidak dapat menyelesaikan definisi deklarasi maju.
|
-
MIDL2338
|
-
sakelar bertentangan
- Anda tidak dapat menggunakan sakelar baris perintah /osf dan /ms_ext saat Mengkompilasi file IDL. Anda harus memilih satu atau yang lain.
|
-
MIDL2339
|
-
MIDL tidak dapat menghasilkan informasi HOOKOLE untuk union yang tidak dapat di-rpc
- Kesalahan ini kedaluarsa. Ini disediakan secara ketat untuk kompatibilitas mundur.
|
-
MIDL2340
|
-
tidak ada ekspresi kasus yang ditemukan untuk union
- Setiap bidang serikat harus memiliki pernyataan kasus dengan ekspresi konstanta.
|
-
MIDL2341
|
-
[user_marshal] dan [wire_marshal] tidak didukung dengan bendera -Oi dan -Oic, gunakan -Os atau -Oicf
- Atribut [user_marshal] dan [wire_marshal] memerlukan fitur pengoptimalan tertentu yang hanya tersedia di /Oicf (proxy tanpa kode dengan string format cepat) atau /Os (marshaling mode campuran).
|
-
MIDL2342
|
-
pipa tidak dapat digunakan dengan serialisasi data, yaitu [encode] dan/atau [dekode]
- Anda tidak dapat meneruskan pipa sebagai parameter ke prosedur yang memiliki atribut [encode] atau [dekode].
|
-
MIDL2343
|
-
semua penunjuk antarmuka pipa harus menggunakan satu tidak langsung
- Anda tidak dapat menggunakan penunjuk ke penunjuk ke antarmuka pipa dengan cara ini.
|
-
MIDL2344
|
-
[iid_is()] tidak dapat digunakan dengan penunjuk antarmuka pipa
- Pesan ini kedaluarsa. Pesan ini tidak lagi digunakan oleh pengkompilasi.
|
-
MIDL2345
|
-
invalid atau inapplicable -lcid switch
- Pengidentifikasi lokal (LCID) yang Anda tentukan tidak valid.
|
-
MIDL2346
|
-
lcid yang ditentukan berbeda dari spesifikasi sebelumnya
- Nilai yang ditentukan dalam /lcid dan [lcid] berbeda. Pengkompilasi MIDL akan menggunakan yang terakhir ditentukan.
|
-
MIDL2347
|
-
importlib tidak diperbolehkan di luar blok pustaka
- Semua pernyataan [importlib] harus terjadi di blok [pustaka].
|
-
MIDL2348
|
-
nilai titik mengambang tidak valid
- Kesalahan ini tidak boleh dipancarkan oleh MIDL. Jika Anda melihat kesalahan ini, silakan laporkan bug ke Microsoft yang menyediakan semua file yang diperlukan untuk mereproduksi kesalahan, termasuk file IDL, file ACF, header, dll.
|
-
MIDL2349
|
-
anggota tidak valid
- Prosedur tidak boleh menjadi anggota pustaka.
|
-
MIDL2350
|
-
kemungkinan anggota tidak valid
- Untuk menjadi anggota pustaka yang valid, elemen pustaka harus berupa modul, dispinterface, coclass, pernyataan if, struktur, serikat, enumerasi, atau deklarasi maju.
|
-
MIDL2351
|
-
ketidakcocokan dalam jenis pipa dan antarmuka
- Pesan ini kedaluarsa.
|
-
MIDL2352
|
-
string, array yang bervariasi, array yang sesuai, dan parameter penunjuk penuh mungkin tidak kompatibel dengan parameter pipa selama durasi
- Metode yang menggabungkan satu atau beberapa string [in], berbagai array, array yang sesuai, dan parameter penunjuk penuh dan parameter pipa [in] menghasilkan pembuatan stub yang hanya berjalan pada urutan protokol ncacn_* dan ncalrpc pada komputer Windows. Menggunakan stub untuk melakukan panggilan pada urutan protokol ncadg_* atau menerima panggilan dari vendor OSF DCE RPC lainnya dapat menghasilkan kesalahan di server selama durasi. Kesalahan ini terjadi dimulai dengan Windows Server 2003.
|
-
MIDL2353
|
-
parameter harus dalam
- Handel asinkron harus berupa parameter [in].
|
-
MIDL2354
|
-
jenis parameter objek [asinkron] harus berupa penunjuk ganda ke antarmuka
- Parameter harus berjenis IAsyncManager **.
|
-
MIDL2355
|
-
jenis handel asinkron yang salah
- Jenis handel harus IAsyncManager atau jenis yang berasal dari IAsyncManager.
|
-
MIDL2356
|
-
sakelar "internal" memungkinkan fitur yang tidak didukung, gunakan dengan hati-hati
- Hindari menggunakan sakelar ini.
|
-
MIDL2357
|
-
prosedur asinkron tidak dapat menggunakan handel otomatis
- Prosedur dengan atribut [asinkron] memerlukan handel eksplisit.
|
-
MIDL2358
|
-
error_status_t akan memiliki kedua comm_status dan [fault_status]
- Prosedur ditentukan dengan atribut IDL [mungkin] atau [pesan] tetapi jenis pengembalian hanya memiliki atribut ACF [comm_status] atau [fault_status]. Kedua atribut ACF diperlukan.
Contoh file ACF:
[comm_status] roo(); //MIDL 2358
[fault_status] bar(); //MIDL 2358
[comm_status, fault_status] baz(); //OK
|
-
MIDL2359
|
-
konstruksi ini hanya diperbolehkan dalam blok pustaka
- Modul hanya dapat terjadi dalam blok pustaka.
|
-
MIDL2360
|
-
pendefinisian ulang tipe tidak valid
- Jenis baru didefinisikan secara rekursif pada jenis yang tidak ada.
Contoh:
typedef roo roo[10]; //MIDL 2360
|
-
MIDL2361
|
-
prosedur dengan atribut [vararg] harus memiliki parameter SAFEARRAY(VARIANT) ; urutan param adalah [vararg], [lcid], [retval]
- Sebagian besar parameter untuk prosedur dengan atribut [vararg] harus terjadi sebelum parameter SAFEARRAY(VARIANT). Parameter SAFEARRAY (VARIAN) harus ada. Jika daftar parameter berisi parameter dengan atribut [ lcid], daftar parameter harus mengikuti parameter SAFEARRAY(VARIANT). Jika daftar parameter berisi parameter dengan atribut [retval], itu harus terjadi setelah parameter dengan atribut [lcid].
|
-
MIDL2363
|
-
terlalu banyak metode dalam antarmuka, memerlukan Windows 2000 atau lebih tinggi
- Pengkompilasi MIDL tidak mengizinkan lebih dari 1024 metode dalam antarmuka saat Anda mengkompilasi dalam mode /Oicf .
|
-
MIDL2364
|
-
switch sedang di-fase keluar
- Sakelar berikut usang: /hookole, /env win16, dan /env.
|
-
MIDL2365
|
-
tidak dapat berasal dari IAdviseSink, IAdviseSink2, atau IAdviseSinkEx
- Antarmuka ini tidak dapat diperluas.
|
-
MIDL2366
|
-
tidak dapat menetapkan nilai default
- Menetapkan nilai default ke parameter diizinkan di Visual Basic, tetapi tidak di C++. Jika Anda menggunakan C++, nilai default diabaikan.
|
-
MIDL2367
|
-
pembuatan pustaka jenis untuk DOS/Win16/MAC tidak didukung
- MIDL tidak mendukung pustaka tipe 16-bit.
|
-
MIDL2368
|
-
kesalahan saat menghasilkan pustaka jenis, diabaikan
- Terjadi kesalahan nonfaktor saat menghasilkan pustaka tipe.
|
-
MIDL2369
|
-
ukuran tumpukan terlampaui untuk /Oi, menggunakan /Os
- Mode pengoptimalan -Oi dibatasi hingga 128 byte ruang tumpukan untuk parameter. Pengkompilasi telah secara otomatis beralih ke mode pengoptimalan Os untuk mengatasi batasan ini.
Untuk menghindari peringatan ini, gunakan mode pengoptimalan -Oicf atau -Os. Mode pengoptimalan dapat diubah pada baris perintah dengan menentukan -Oicf atau -Os alih-alih -Oi atau dengan menambahkan atribut [optimize9"icf")] atau mengoptimalkan [("s")] ke fungsi dalam file ACF. Peringatan ini biasanya terjadi saat meneruskan struktur besar sebagai parameter menurut nilai. Ukuran tumpukan yang diperlukan dapat diturunkan dengan meneruskan penunjuk ke struktur sebagai gantinya. Contoh:
typedef struct
{
char a[127];
}
large;
//This function has a stack size of 132 (x86) or 136 (alpha) on 32-bit systems
void roo(large s, int a); //MIDL 2360
// workaround: pass by reference
void bar (large *s, int a);
|
-
MIDL2370
|
-
penggunaan /robust membutuhkan /Oicf, mode peralihan
- Anda harus mengompilasi dalam mode /Oicf saat menentukan sakelar /robust pada baris perintah.
|
-
MIDL2371
|
-
rentang yang salah ditentukan
- Nilai tertinggi yang ditentukan dalam atribut [rentang] kurang dari nilai terendah.
Contoh:
void roo([range(3,2)] int a); //MIDL 2371
|
-
MIDL2372
|
-
kombinasi parameter [in] only dan [out] tidak valid untuk antarmuka [async_uuid]
- Hanya kombinasi atribut sederhana dengan parameter [in] atau [out] yang diizinkan untuk jenis antarmuka ini.
|
-
MIDL2373
|
-
Platform DOS, Win16, dan MAC tidak didukung dengan /robust
- MIDL mendukung sakelar /robust pada Microsoft Windows 2000 atau yang lebih baru.
|
-
MIDL2374
|
-
dukungan untuk proksi stubless gaya NT 3.51 untuk antarmuka objek akan dihapus; gunakan /Oif.
- Mode ini usang. Gunakan /Oif atau /Oicf.
|
-
MIDL2375
|
-
[encode] atau [dekode] dengan /robust memerlukan /Oicf
- Serialisasi tidak dapat dilakukan ketika sakelar /robust ditentukan.
|
-
MIDL2377
|
-
atribut yang berkonflik ditentukan
- Kedua context_handle_serialize dan [context_handle_noserialize] ditentukan.
|
-
MIDL2378
|
-
[serialisasi], [noserialize] dapat diterapkan ke context_handles
- Atribut ACF [context_handle_serialize] atau [context_handle_noserialize] hanya dapat diterapkan pada jenis yang merupakan handel konteks.
Contoh file IDL:
typedef /*[context_handle] */ void *PV; //Note: PV is *not* a context handle.
Contoh file ACF:
typedef [context_handle_serialize] PV; //MIDL 2378
|
-
MIDL2379
|
-
Pengkompilasi mencapai batas untuk representasi string format. Lihat dokumentasi untuk saran.
- Pengkompilasi MIDL memiliki batas 64 KB untuk string format. Kesalahan ini umumnya terjadi ketika file IDL menyertakan file IDL lainnya. File IDL komposit yang dihasilkan oleh semua pernyataan include melebihi batas tabel representasi jenis interpreter mesin marshaling. Coba gunakan direktif impor daripada direktif sertakan dalam file IDL Anda. Untuk informasi selengkapnya, lihat Mengimpor File Header Sistem, menyertakan, dan mengimpor.
|
-
MIDL2380
|
-
format kawat mungkin salah, Anda mungkin perlu menggunakan -ms_conf_struct, lihat dokumentasi untuk saran
- Pengkompilasi MIDL tidak dapat menghasilkan format yang dapat ditransmisikan untuk data. Salah satu cara umum untuk mendapatkan kesalahan ini adalah dengan menentukan ms_conf_struct di dalam struktur yang kompleks.
|
-
MIDL2381
|
-
ukuran tumpukan atau offset yang lebih besar dari batas 64 K. Lihat dokumentasi untuk saran.
- Panggilan menghasilkan tumpukan yang lebih besar dari 64 KB. Coba teruskan data dalam blok yang lebih kecil.
|
-
MIDL2382
|
-
mode interpreter yang dipaksa untuk platform 64-bit
- Platform 64-bit memerlukan mode kompilasi /Oicf.
|
-
MIDL2383
|
-
Ukuran elemen array lebih besar dari batas 64 KB.
- Semua elemen array harus berukuran kurang dari 64 KB.
|
-
MIDL2384
|
-
hanya ada satu parameter [Icid] dalam metode , dan harus terakhir atau kedua untuk bertahan jika parameter terakhir memiliki [retval]
- Parameter dengan atribut [lcid] harus terjadi terakhir. Satu-satunya pengecualian adalah ketika ada juga parameter dengan atribut [retval]. Ketika keduanya terjadi, parameter kedua hingga terakhir dalam daftar parameter harus memiliki atribut [ lcid]. Parameter terakhir harus memiliki atribut [retval].
|
-
MIDL2385
|
-
sintaks yang salah untuk midl_pragma
- Kompilator MIDL mendeteksi kesalahan sintaks yang tidak diketahui dalam pernyataan midl_pragma.
|
-
MIDL2386
|
-
__int3264 tidak didukung dalam mode /osf
- Jika Anda perlu menggunakan __int3264, kompilasi dalam mode /ms-ext.
|
-
MIDL2387
|
-
simbol tidak terselesaikan dalam pustaka jenis
- Pengkompilasi tidak dapat menyelesaikan deklarasi formal atau tipe yang direferensikan dalam pustaka tipe.
|
-
MIDL2388
|
-
pipa asinkron tidak dapat diteruskan oleh nilai
- Pipa asinkron harus diteruskan oleh referensi atau alamat.
|
-
MIDL2389
|
-
offset parameter melebihi batas 64 KB untuk prosedur yang ditafsirkan
- Kesalahan ini biasanya berarti bahwa prosedur memiliki terlalu banyak parameter.
|
-
MIDL2390
|
-
elemen array tidak valid
- Pipa tidak dapat digunakan sebagai elemen array.
|
-
MIDL2391
|
-
anggota dispinterface harus berupa metode, properti, atau antarmuka
- Dispinterface tidak boleh berisi definisi jenis, struktur, enumerasi, atau serikat pekerja.
|
-
MIDL2392
|
-
Prosedur [lokal] tanpa [call_as]
- Prosedur objek yang memiliki atribut [lokal] juga memerlukan atribut [call_as].
|
-
MIDL2393
|
-
vektor multi dimensi, beralih ke /Oicf
- Mode pengoptimalan /Os tidak mendukung array ukuran nonfiks multidimensi. Pengkompilasi telah secara otomatis mengalihkan mode pengoptimalan ke /Oicf untuk fungsi ini.
Peringatan ini dapat ditekan secara global dengan mengubah mode pengompilasi dengan menentukan /Oicf pada baris perintah MIDL atau dengan menggunakan peringatan midl_pragma (nonaktifkan: 2393) dalam file IDL. Mode pengoptimalan dapat diubah untuk fungsi individual dengan menambahkan atribut [optimize("icf")] ke fungsi dalam file ACF. Contoh berikut menunjukkan peringatan ini:
void roo(long s1, [size_is(s1)] long a[][30]; //MIDL2393
void bar(long s1, long s2, [size_is(s1,s2) long **a);//MIDL2393
|
-
MIDL2395
|
-
jenis atau konstruksi tidak didukung dalam blok pustaka karena dukungan Oleaut32.dll untuk jenis polimorfik 64 KB hilang
- Otomatisasi OLE tidak mendukung jenis polimorfik (seperti _int3264, INT_PTR, dll). Jenis ini memiliki representasi data yang tidak kompatibel antara platform 32-bit dan 64-bit. Panggilan jarak jauh akan gagal pada durasi pada platform 64-bit.
Catatan:
Perhatikan bahwa pada rilis Windows 2000, file TLB 64-bit didukung oleh OLE Automation dengan mengonversi informasi TLB 32-bit pada durasi. Oleh karena itu, hanya generasi TLB 32-bit yang didukung oleh MIDL.
Jika MIDL digunakan hanya untuk menghasilkan file header, sakelar /notlb akan menekan pembuatan file TLB.
|
-
MIDL2396
|
-
kode interpreter lama yang dihasilkan untuk 64b
- Kesalahan ini kedaluarsa. Jika Anda melihat kesalahan ini, laporkan bug ke Microsoft yang memberikan file IDL, file ACF, dan baris perintah MIDL lengkap Anda.
|
-
MIDL2397
|
-
sakelar pengkompilasi tidak didukung lagi
- Sakelar atau sakelar yang ditentukan tidak lagi didukung.
|
-
MIDL2398
|
-
tidak dapat menjalankan mesin MIDL
- Pada rilis Windows 2000 (MIDL versi 5.03.279), kompilator MIDL diimplementasikan menggunakan dua file yang dapat dieksekusi: Midl.exe (driver), dan Midlc.exe (mesin kompilator). Kesalahan ini menunjukkan Midl.exe tidak dapat meluncurkan Midlc.exe. Pastikan Midlc.exe berada dalam direktori yang sama dengan Midl.exe, dan versinya sama.
Kesalahan mungkin disebabkan oleh penyalinan Midl.exe tetapi tidak Midlx.exe dari distribusi terbaru. Jalankan midl dan/atau midlc di baris perintah tanpa parameter apa pun untuk melihat nomor versi executable. |
-
MIDL2399
|
-
perintah buruk dari driver
- Pada rilis Windows 2000 (MIDL versi 5.03.279), pengkompilasi MIDL diimplementasikan menggunakan dua file yang dapat dieksekusi: Midl.exe (driver), dan Midlc.exe (mesin pengkompilasi). Kesalahan ini menunjukkan bahwa file sementara yang digunakan untuk meneruskan perintah dari Midl.exe ke Midlc.exe hilang atau rusak. Pastikan Midlc.exe berada dalam direktori yang sama dengan Midl.exe, dan versinya sama.
Kesalahan mungkin disebabkan oleh upaya untuk menjalankan Midlc.exe secara langsung atau dengan menyalin Midl.exe tetapi tidak Midlc.exe dari distribusi terbaru. Jalankan midl dan/atau midlc di baris perintah tanpa parameter apa pun untuk melihat nomor versi yang dapat dieksekusi. |
-
MIDL2400
|
-
untuk otomatisasi ole, parameter opsional harus VARIAN atau VARIAN *
- Otomatisasi OLE mengharuskan semua parameter [opsional] berjenis VARIAN atau VARIAN*.
Dalam otomatisasi OLE, menggunakan parameter non-VARIAN dapat menyebabkan panggilan gagal pada durasi atau meneruskan data yang tidak terdefinisi untuk parameter [opsional]. |
-
MIDL2401
|
-
[defaultvalue] diterapkan ke non-VARIANT dan [opsional]. Silakan hapus [opsional]
- Atribut [defaultvalue] menyiratkan [opsional]. Atribut [ opsional] tidak diperlukan.
|
-
MIDL2402
|
-
Atribut [opsional] tidak dapat diterapkan di luar blok pustaka
-
Fungsionalitas yang tersirat oleh atribut [ opsional] tidak berlaku untuk proksi yang dihasilkan untuk antarmuka di luar blok pustaka.
|
-
MIDL2403
|
-
Jenis data parameter [Icid] harus panjang
- OLE Automation mengharuskan parameter dengan atribut [Icid] harus berjenis panjang.
|
-
MIDL2404
|
-
prosedur dengan [propput], [propget] atau [propref] tidak dapat memiliki lebih dari satu parameter yang diperlukan setelah [opsional] satu
- Tidak boleh ada lebih dari satu parameter tanpa [opsional] setelah parameter terakhir dengan [opsional] saat menggunakan [propput], [propget], atau [ propputref].
|
-
MIDL2405
|
-
[comm_status] atau [fault_status] dengan pickling membutuhkan -Oicf
- Mode pengoptimalan -Oi lama tidak mendukung prosedur atau parameter dengan [ comm_status] atau [ fault_status] dengan pickling (yaitu, menggunakan [ encode] dan/atau [ dekode]).
Peringatan ini dapat ditekan secara global dengan menentukan -Oicf pada baris perintah MIDL atau untuk fungsi individual dengan menambahkan atribut [optimize("icf:)] ke fungsi dalam file ACF. Secara umum, mode pengoptimalan -Oicf direkomendasikan melalui mode -Oi . |
-
MIDL2406
|
-
driver midl dan versi kompilator tidak cocok
- Pada rilis Windows 2000 (MIDL versi 5.03.279) pengkompilasi MIDL diimplementasikan menggunakan dua file yang dapat dieksekusi: Midl.exe (driver), dan Midlc.exe (mesin pengkompilasi). Kesalahan ini menunjukkan bahwa versi Midl.exe tidak cocok dengan versi Midlc.exe.
Kesalahan mungkin disebabkan oleh penyalinan Midl.exe tetapi tidak Midlc.exe dari distribusi terbaru. Jalankan midl dan/atau midlc di baris perintah tanpa parameter apa pun untuk melihat nomor versi yang dapat dieksekusi. |
-
MIDL2407
|
-
tidak ada file perantara yang ditentukan: gunakan Midl.exe
- Pada rilis Windows 2000 (MIDL versi 5.03.279), pengkompilasi MIDL diimplementasikan menggunakan dua file yang dapat dieksekusi: Midl.exe (driver), dan Midlc.exe (mesin pengkompilasi). Kesalahan ini menunjukkan bahwa Midlc.exe dijalankan secara langsung alih-alih menggunakan Midl.exe.
|
-
MIDL2408
|
-
masalah pemrosesan dengan parameter dalam prosedur
- Kesalahan ini dapat dilihat saat mengimpor data dari TLB dan ketika prosedur memiliki parameter yang tidak valid.
Jika Anda melihat kesalahan ini, laporkan bug ke Microsoft. Tentukan file IDL, file ACF, file TLB, dan baris perintah MIDL lengkap. |
-
MIDL2409
|
-
masalah pemrosesan dengan bidang dalam struktur
- Kesalahan ini dapat dilihat saat mengimpor data dari TLB dan ketika struktur memiliki struktur atau bidang union yang tidak valid.
Jika Anda melihat kesalahan ini, laporkan bug ke Microsoft. Tentukan file IDL, file ACF, file TLB, dan baris perintah MIDL lengkap. |
-
MIDL2410
|
-
inkonsistensi kompilator internal terdeteksi: offset string format tidak valid. Lihat dokumentasi untuk informasi selengkapnya.
- Kompilator MIDL mendeteksi nilai yang tidak valid dalam struktur data internalnya. Ini mungkin disebabkan oleh struktur yang rekursif atau oleh kompilator yang melanggar batas representasinya sendiri untuk data internal. Untuk mengidentifikasi dan/atau mengatasi masalah, cobalah untuk menyederhanakan file IDL. Anda dapat melakukan ini dengan menyederhanakan parameter kompleks dan struktur data rekursif atau membuat file IDL lebih kecil dengan memisahkannya. Pesan ini dapat disertai dengan cetakan diagnostik dengan informasi tambahan tentang masalah tersebut.
Jika Anda melihat kesalahan ini, laporkan bug ke Microsoft. Tentukan file IDL Anda, file ACF, baris perintah MIDL lengkap, dan output diagnostik, jika ada. |
-
MIDL2411
|
-
inkonsistensi kompilator internal terdeteksi: offset jenis tidak valid. Lihat dokumentasi untuk informasi selengkapnya.
- Kompilator MIDL mendeteksi nilai yang tidak valid dalam struktur data internalnya. Ini mungkin disebabkan oleh struktur yang rekursif atau oleh kompilator yang melanggar batas representasinya sendiri untuk data internal. Untuk mengidentifikasi dan/atau mengatasi masalah, coba sederhanakan file IDL. Anda dapat melakukan ini dengan menyederhanakan parameter kompleks dan struktur data rekursif atau dengan membuat file IDL lebih kecil dengan memisahkannya. Pesan ini dapat disertai dengan cetakan diagnostik dengan informasi tambahan tentang masalah tersebut.
Jika Anda melihat kesalahan ini, laporkan bug ke Microsoft. Tentukan file IDL Anda, file ACF, baris perintah MIDL lengkap, dan output diagnostik, jika ada. |
-
MIDL2412
|
-
Sintaks SAFEARRAY(roo) tidak didukung di luar blok pustaka, gunakan LPSAFEARRAY untuk proksi
- SAFEARRAY yang ditik secara eksplisit tidak diperbolehkan di luar blok pustaka. Gunakan LPSAFEARRAY sebagai gantinya.
Contoh berikut menunjukkan kesalahan ini:
void roo(SAFEARRAY(long) *a); //MIDL2412 when outside a library block
void roo(LPSAFEAEEAY a); //OK
|
-
MIDL2413
|
-
bidang bit tidak didukung
- Bidang bit gaya C tidak didukung oleh MIDL. Ini berlaku untuk pembuatan proksi serta pembuatan TLB.
|
-
MIDL2414
|
-
floating point atau jenis pengembalian kompleks dengan [dekode] tidak didukung di -Oicf, menggunakan -OI
- Prosedur dengan jenis floating point atau structure/union return tidak didukung dalam acar gaya -Oicf. Pekerjaan untuk 32-bit adalah menggunakan mode pengoptimalan -Oi saat menserialisasikan data (menggunakan [encode] dan/atau [dekode]). Namun, karena penerjemah gaya -Oi lama dan dukungan pengambilan dijadwalkan untuk di-fase setelah rilis Windows 2000, menggunakan pointer sangat disarankan sebagai pekerjaan untuk masalah ini. Perhatikan juga bahwa biasanya, mengubah metode antarmuka untuk menggunakan penunjuk [out, ref] alih-alih nilai pengembalian yang menyebabkan masalah sepenuhnya kompatibel mundur pada kawat dan dapat dengan mudah disembunyikan dari lapisan aplikasi.
Peringatan ini dapat ditekan secara global dengan menentukan -Oi pada baris perintah MIDL atau untuk fungsi individual dengan menambahkan atribut [optimize("i")] ke fungsi dalam file ACF. Contoh berikut menunjukkan masalahnya: roo.idl:
double GetDouble();
roo.acf:
[decode] GetDouble();
Salah satu opsi untuk mengatasi batasan ini adalah meneruskan parameter [out] untuk menahan hasilnya alih-alih menggunakan nilai yang dikembalikan: roo.idl:
void GetDouble([out] double *result); //top level pointer is a [ref] pointer
roo.acf:
[decode] GetDouble();
Seperti disebutkan sebelumnya, solusi yang dijelaskan di atas baik tidak hanya untuk antarmuka baru tetapi juga sebagai solusi untuk yang lama. Representasi kawat untuk argumen "keluar" baru sama dengan untuk nilai yang dikembalikan (perhatikan batal sebagai nilai pengembalian baru). |
-
MIDL2415
|
-
jenis pengembalian tidak didukung untuk 64-bit saat menggunakan [dekode]
- Prosedur dengan jenis floating point atau structure/union return tidak didukung dalam mode 64-bit saat melakukan serialisasi data (menggunakan [ encode] dan/atau [ dekode]). Ini terkait dengan interpreter gaya lama -Oi dan serializer data yang tidak didukung pada platform 64-bit. Silakan lihat deskripsi MIDL2414 untuk informasi lebih lanjut.
Contoh berikut menunjukkan kesalahan ini: roo.idl:
double GetDouble();
roo.acf:
[decode] GetDouble();
Berikut ini disarankan sebagai solusi untuk antarmuka baru dan lama. Gunakan parameter [out] untuk menahan hasilnya alih-alih menggunakan nilai yang dikembalikan: roo.idl:
void GetDouble([out] double *result); //top level pointer is a [ref] pointer.
roo.acf:
[decode] GetDouble();
Perhatikan bahwa solusi ini sepenuhnya kompatibel mundur pada kawat, karena representasi kawat dari pointer [ref, out] atau double sama dengan yang ganda. |
-
MIDL2416
|
-
jenis yang dikirimkan tidak boleh berisi penunjuk penuh untuk [wire_marshal] atau [user_marshal]
- Jenis dengan atribut [ wire_marshal] atau [ user_marshal] mungkin tidak berisi penunjuk penuh ([ ptr]). Gunakan [ unik] atau [ ref] sebagai gantinya.
Contoh berikut menunjukkan kesalahan ini:
typedef struct
{
[ptr] long *a; //Should use [ref] or [unique] instead
}
st1;
typedef [wire_marshal(st1)] struct
{
long a;
}
st2:
void roo(st2 *s); //MIDL2416
|
-
MIDL2417
|
-
jenis yang dikirimkan harus berupa pointer atau memiliki ukuran konstan untuk [wire_marshal] dan [user_marshal]
- Jenis tingkat atas dengan atribut [ wire_marshal] atau [ user_marshal] harus memiliki ukuran yang terdefinisi dengan baik pada waktu kompilasi. Mereka tidak boleh atau berisi array yang sesuai atau berukuran bervariasi.
Contoh berikut menunjukkan kesalahan ini:
typedef struct //Type contains variable-sized array
{
long s;
[size_is(s)] char a[];
}
st1;
typedef [wire_marshal(st1)] struct
{
long a;
}
st2;
void roo(st2 *s); //MIDL2417
|
-
MIDL2418
|
-
prosedur dengan [propget] harus memiliki setidaknya satu parameter atau nilai yang dikembalikan
- Prosedur dengan atribut [propget] harus memiliki beberapa cara untuk mengembalikan nilai properti. Mereka harus memiliki setidaknya satu parameter [out] atau nilai yang dikembalikan.
|
-
MIDL2461
|
-
Atribut [readonly] diterapkan pada tingkat metode.
- Atribut [readonly] hanya dapat diterapkan pada tingkat parameter.
|
-
MIDL2465
|
-
Struktur yang berisi array yang sesuai harus diteruskan oleh referensi
- Parameter tingkat atas dalam RPC harus memiliki ukuran yang terdefinisi dengan baik pada waktu kompilasi. Mereka tidak boleh, juga tidak berisi array yang sesuai atau berukuran bervariasi. Selain itu, pengguna tidak dapat mengodekan/mendekode jenis tanpa ukuran yang ditentukan dengan baik. Aplikasi perlu meneruskan struct/conformant yang sesuai dengan struct berdasarkan referensi.
Contoh berikut menunjukkan kesalahan ini:
typedef struct //Type contains variable-sized array
{
long s;
[size_is(s)] char a[];
}
st1;
void roo(st1 s); //MIDL2465
on .acf file
typedef [encode,decode] st1; //MIDL2465
|
-
MIDL9008
|
-
kode> kesalahan sistem masalah <kompilator internal - pengkompilasi tidak dapat dilanjutkan karena alasan yang tidak diketahui. Lihat dokumentasi untuk solusinya.
- Pengkompilasi tidak dapat dilanjutkan dan penyebab kesalahan tidak diketahui. Nomor kesalahan heksadesimal adalah pengidentifikasi kesalahan sistem. Kompilasi mungkin gagal karena masalah eksternal, seperti kondisi kehabisan memori. Dalam hal ini, Anda dapat menemukan informasi lebih lanjut di Winerror.h atau Ntstatus.h.
Ada dua situasi yang biasanya menghasilkan kesalahan ini:
- Pengkompilasi MIDL gagal dipulihkan setelah mendeteksi kesalahan dalam file IDL. Jika MIDL mengembalikan pesan kesalahan tentang file IDL Anda, coba perbaiki dan kompilasi ulang. Jika tidak ada pesan kesalahan, pengkompilasi mungkin gagal sebelum dapat melaporkan kesalahan. Cari kesalahan sintaks pada baris di mana kesalahan pengkompilasi internal dilaporkan.
- Pengkompilasi MIDL tidak dapat menghasilkan kode yang benar di bawah opsi pengoptimalan yang ditentukan. Coba ubah mode kompilator, kompilasi dalam pengoptimalan mode campuran (/Os), atau hapus semua pengoptimalan. Atau, kompilasi ulang menggunakan bendera /NO_FORMAT_OPT untuk menekan pengoptimalan default MIDL dari prosedur dan jenis deskriptor.
Terkadang kesalahan ini terjadi bahkan ketika file IDL sudah benar dan tidak ada opsi pengoptimalan yang digunakan. Jika demikian, coba tulis ulang bagian kode di sekitar tempat kesalahan dilaporkan dengan menghapus modifikasi terbaru, menyederhanakan atau mengatur ulang jenis data, mengubah prototipe, atau mulai mengomentari bagian file IDL untuk menemukan kode masalah. Jika tidak ada opsi ini yang berfungsi, atau jika Anda merasa masalahnya mungkin terkait dengan bug di Midl.exe, harap beri tahu Microsoft, berikan semua detail yang relevan. |