IDL Öznitelikleri
Geleneksel olarak bir .idl dosyasının bakımını yapmak, şunları yapmak zorunda olduğunuz anlamına geliyordu:
Değiştirebilmek için bir .idl dosyasının yapısı ve söz dizimi hakkında bilgi sahibi olun.
.idl dosyasının bazı yönlerini değiştirmenize olanak tanıyan bir sihirbaza güvenin.
Artık Visual C++ IDL özniteliklerini kullanarak kaynak kod dosyasının içinden .idl dosyasını değiştirebilirsiniz. Çoğu durumda, Visual C++ IDL öznitelikleri MIDL öznitelikleriyle aynı ada sahiptir. Visual C++ IDL özniteliğinin adı ve MIDL özniteliği aynı olduğunda, visual C++ özniteliğini kaynak kod dosyanıza yerleştirmek namesake MIDL özniteliğini içeren bir .idl dosyasıyla sonuçlanır. Ancak Visual C++ IDL özniteliği, MIDL özniteliğinin tüm işlevlerini sağlamayabilir.
COM öznitelikleriyle kullanılmadığında, IDL öznitelikleri arabirimleri tanımlamanıza olanak sağlar. Kaynak kod derlendiğinde, öznitelikler oluşturulan .idl dosyasını tanımlamak için kullanılır. BIR ATL projesinde COM öznitelikleriyle kullanıldığında, gibi coclass
bazı IDL öznitelikleri projeye kod eklemeye neden olur.
idl_quote,Visual C++'ın geçerli sürümünde desteklenmeyen MIDL yapılarını kullanmanıza olanak tanır. Bu ve importlib ve includelib gibi diğer öznitelikler, geçerli Visual Studio C++ projenizde var olan .idl dosyalarını kullanmanıza yardımcı olur.
Öznitelik | Açıklama |
---|---|
toplanabilir | Bir denetimin başka bir denetim tarafından toplanabilir olduğunu gösterir. |
appobject | Coclass'ı tam exe uygulamasıyla ilişkili bir uygulama nesnesi olarak tanımlar ve ortak sınıfın işlevlerinin ve özelliklerinin bu tür kitaplığında genel olarak kullanılabilir olduğunu gösterir. |
async_uuid | MIDL derleyicisini COM arabiriminin hem zaman uyumlu hem de zaman uyumsuz sürümlerini tanımlamaya yönlendiren UUID'yi belirtir. |
bindable | Özelliğinin veri bağlamayı desteklediğini gösterir. |
call_as | Uzak bir işlevle eşlenemeyen bir işlevi etkinleştirir. |
case | Birleşimde switch_type özniteliğiyle birlikte kullanılır. |
coclass | Sınıf tanımını coclass olarak bir .idl dosyasına yerleştirir. |
control | Kullanıcı tanımlı türün bir denetim olduğunu belirtir. |
cpp_quote | Belirtilen dizeyi, tırnak karakterleri olmadan oluşturulan üst bilgi dosyasına yayar. |
defaultbind | Nesneyi en iyi temsil eden tek, bağlanabilir özelliği gösterir. |
defaultcollelem | Visual Basic kod iyileştirmesi için kullanılır. |
defaultvalue | Yazılan isteğe bağlı parametre için varsayılan değerin belirtimine izin verir. |
varsayılan | Ortak sınıf içinde tanımlanan özel veya dispinterface öğesinin varsayılan programlanabilirlik arabirimini temsil ettiğini gösterir. |
defaultvtable | Bir arabirimi, denetim için varsayılan vtable arabirimi olarak tanımlar. |
dispinterface | .idl dosyasına dağıtım arabirimi olarak bir arabirim yerleştirir. |
displaybind | Kullanıcıya bağlanabilir olarak görüntülenmesi gereken bir özelliği gösterir. |
dual | .idl dosyasına bir arabirimi çift arabirim olarak yerleştirir. |
entry | DLL'deki giriş noktasını tanımlayarak modülde dışarı aktarılan bir işlevi veya sabiti belirtir. |
first_is | İletilecek ilk dizi öğesinin dizinini belirtir. |
helpcontext | Kullanıcının Yardım dosyasında bu öğe hakkındaki bilgileri görüntülemesine olanak tanıyan bir bağlam kimliği belirtir. |
helpfile | Bir tür kitaplığı için Yardım dosyasının adını ayarlar. |
helpstringcontext | .hlp veya .chm dosyasındaki bir yardım konusunun kimliğini belirtir. |
helpstringdll | Belge dizesi araması (yerelleştirme) gerçekleştirmek için kullanılacak DLL'nin adını belirtir. |
helpstring | Uygulandığı öğeyi açıklamak için kullanılan karakter dizesini belirtir. |
hidden | Öğenin var olduğunu ancak kullanıcı odaklı bir tarayıcıda görüntülenmemesi gerektiğini gösterir. |
idl_module | DLL'de bir giriş noktası belirtir. |
idl_quote | Visual C++'ın geçerli sürümünde desteklenmeyen öznitelikleri veya IDL yapılarını kullanmanıza olanak tanır. |
id | Bir üye işlevi (arabirimde veya dispinterface içinde bir özellik veya yöntem) için DISPID belirtir. |
iid_is | Arabirim işaretçisi tarafından işaret edilen COM arabiriminin IID değerini belirtir. |
immediatebind | Veritabanına, veriye bağlı bir nesnenin özelliğinde yapılan tüm değişikliklerin hemen bildirileceğini gösterir. |
importlib | Zaten başka bir tür kitaplığında derlenmiş türleri, oluşturulan tür kitaplığı için kullanılabilir hale getirir. |
import | Ana .idl dosyanızdan başvurmak istediğiniz tanımları içeren başka bir .idl, .odl veya üst bilgi dosyası belirtir. |
include | Oluşturulan .idl dosyasına eklenecek bir veya daha fazla üst bilgi dosyasını belirtir. |
includelib | Oluşturulan .idl dosyasına bir .idl veya .h dosyasının eklenmesine neden olur. |
içinde | Bir parametrenin çağrılan yordamdan çağrılan yordama geçirilecek olduğunu gösterir. |
last_is | İletilecek son dizi öğesinin dizinini belirtir. |
lcid | Bir işleve yerel ayar tanımlayıcısı geçirmenizi sağlar. |
length_is | İletilecek dizi öğelerinin sayısını belirtir. |
licensed | Uygulanacağı ortak sınıfın lisanslı olduğunu ve kullanılarak IClassFactory2 örneği oluşturulmalıdır. |
local | Arabirim üst bilgisinde kullanıldığında MIDL derleyicisini üst bilgi oluşturucu olarak kullanmanıza olanak tanır. Tek bir işlevde kullanıldığında, saplama oluşturulmayan yerel bir yordam ayarlar. |
max_is | Geçerli bir dizi dizini için en yüksek değeri gösterir. |
module | .idl dosyasındaki kitaplık bloğunu tanımlar. |
ms_union | Olmayan birleşimlerin ağ veri gösterimi hizalamasını denetler. |
no_injected_text | Derleyicinin öznitelik kullanımının bir sonucu olarak kod eklemesini engeller. |
nonbrowsable | Bir arabirim üyesinin özellik tarayıcısında görüntülenmemesi gerektiğini gösterir. |
noncreatable | Kendi başına örneği oluşturulamayan bir nesneyi tanımlar. |
nonextensible | IDispatch Uygulamanın yalnızca arabirim açıklamasında listelenen özellikleri ve yöntemleri içerdiğini ve çalışma zamanında ek üyelerle genişletilemeyeceğini belirtir. |
object | Özel bir arabirim tanımlar; özel öznitelikle eş anlamlı. |
odl | Bir arabirimi Nesne Açıklama Dili (ODL) arabirimi olarak tanımlar. |
oleautomation | Bir arabirimin Otomasyon ile uyumlu olduğunu gösterir. |
optional | Üye işlevi için isteğe bağlı bir parametre belirtir. |
out | Çağrılan yordamdan çağırma yordamına (sunucudan istemciye) döndürülen işaretçi parametrelerini tanımlar. |
pointer_default | Parametre listelerinde görünen üst düzey işaretçiler dışında tüm işaretçiler için varsayılan işaretçi özniteliğini belirtir. |
pragma | Belirtilen dizeyi, tırnak karakterleri olmadan oluşturulan .idl dosyasına yayar. |
progid | COM nesnesinin ProgID değerini belirtir. |
propget | Özellik erişimcisi (get) işlevini belirtir. |
propputref | Değer yerine başvuru kullanan bir özellik ayarı işlevi belirtir. |
propput | Özellik ayarı işlevini belirtir. |
ptr | bir işaretçiyi tam işaretçi olarak gösterir. |
genel | .idl dosyasının içinden başvurulmasa bile tür kitaplığına bir tür tanımı gitmesini sağlar. |
aralık | Değerleri çalışma zamanında ayarlanan bağımsız değişkenler veya alanlar için izin verilen değerler aralığını belirtir. |
readonly | Bir değişkene atamayı yasaklar. |
ref | Bir başvuru işaretçisi tanımlar. |
requestedit | özelliğinin bildirimi desteklediğini OnRequestEdit gösterir. |
restricted | Bir kitaplığın veya modül, arabirim veya dispinterface üyesinin rastgele çağrılaamayacağını belirtir. |
retval | Üyenin dönüş değerini alan parametreyi belirtir. |
size_is | Boyutlandırılmış işaretçiler, boyutlandırılan işaretçiler için boyutlandırılan işaretçiler ve tek veya çok boyutlu diziler için ayrılan belleğin boyutunu belirtir. |
source | Bir sınıfın, özelliğin veya yöntemin üyesinin olayların kaynağı olduğunu gösterir. |
string | Tek boyutlu char , , wchar_t byte veya eşdeğer dizi ya da böyle bir dizi işaretçisinin dize olarak ele alınması gerektiğini gösterir. |
switch_is | Birleşim üyesini seçen birleşim ayrımı olarak davranan ifadeyi veya tanımlayıcıyı belirtir. |
switch_type | Birleşim ayrımı olarak kullanılan değişkenin türünü tanımlar. |
transmit_as | Derleyiciye, istemci ve sunucu uygulamalarının işlediği, iletilen bir türle sunulan bir türü ilişkilendirmesini sağlar. |
uidefault | Tür bilgisi üyesinin kullanıcı arabiriminde görüntülenecek varsayılan üye olduğunu gösterir. |
unique | Benzersiz bir işaretçi belirtir. |
usesgetlasterror | Çağırana, bu işlevi çağırırken bir hata olması durumunda çağıranın hata kodunu almak için çağırabileceğini GetLastError bildirir. |
uuid | Bir sınıf veya arabirim için benzersiz kimliği belirtir. |
v1_enum | Belirtilen numaralandırılmış türün 16 bit varsayılanı yerine 32 bit varlık olarak iletilmesini sağlar. |
vararg | İşlevin değişken sayıda bağımsız değişken alacağını belirtir. |
vi_progid | ProgID'nin sürümden bağımsız bir biçimini belirtir. |
wire_marshal | Uygulamaya özgü bir veri türü yerine iletim için kullanılacak bir veri türünü belirtir. |