Visual C++ 6.0 bu yana yardımcı işlevi yüklenirken dll değişiklikleri Gecikmeli
Bilgisayarınızda birden fazla Visual C++ sürümü varsa veya kendi Yardımcısı işlevi tanımlanmışsa tarafından etkilenebilir dll yapılan değişiklikler yardımcı işlevi yüklenirken Gecikmeli.Örne?in:
__delayLoadHelper artık __delayLoadHelper2
__pfnDliNotifyHook artık __pfnDliNotifyHook2
__pfnDliFailureHook artık __pfnDliFailureHook2
__FUnloadDelayLoadedDLL artık __FUnloadDelayLoadedDLL2
[!NOT]
Varsayılan yardımcı işlevini kullanıyorsanız, bu değişiklikleri, etkilemez.Linker nasıl harekete geçirmek ile ilgili herhangi bir değişiklik vardır.
Visual C++ birden çok sürümü
Bilgisayarınızda birden fazla Visual C++ sürümü varsa, linker delayimp.lib eşleştiğinden emin olun.Bir uyuşmazlık varsa, ya da bir linker hata alırsınız ___delayLoadHelper2@8 veya ___delayLoadHelper@8 çözülmemiş bir dış simgesi olarak.Önceki eski bir delayimp.lib ile yeni bir bağlantı Oluşturucu anlamına gelir ve ikincisi eski bir bağlayıcı ile yeni delayimp.lib anlamına gelir.
Çözülmemiş linker hata iletisi alırsanız, çalışan dumpbin /linkermember: hangi yardımcı işlevini yerine tanımlanan görmek için yardımcı işlevi içeren beklediğiniz delayimp.lib 1.Yardımcı işlevi de bir nesne dosyasında tanımlanmış olması; çalışan dumpbin /symbols ve Ara delayLoadHelper(2).
Visual C++ 6.0 linker sonra sahip biliyorsanız:
Dumpbin tanımlar olup olmadığını belirlemek için gecikme yük yardımcının .lib veya .obj dosyasını çalıştırma __delayLoadHelper2.Aksi takdirde, bağlantı başarısız olur.
Tanımla __delayLoadHelper gecikme yardımcının .lib veya .obj dosyası yüklenemiyor.
Kullanıcı tanımlı işlevin Yardımcısı
Kendi Yardımcısı işlev tanımlanmış ve Visual C++ geçerli sürümünü kullanıyorsanız, aşağıdakileri yapın:
Yardımcısı işlevine yeniden adlandırma __delayLoadHelper2.
Gecikme tanımlayıcısı (ImgDelayDescr delayimp.h içinde) işaretçilerinde mutlak adreslerden (VAs) göreli adreslerine (RVAs) 32 ve 64 bit programların beklendiği gibi çalışmamasına değiştirilmiş olduğundan, işaretçiler bu geri dönüştürmeniz gerekir.Yeni bir işlev eklenmiştir: PFromRva, delayhlp.cpp içinde bulundu.Ya da 32 veya 64 bit işaretçiler dönüştürmek her tanımlayıcısı alanları bu işlevi kullanabilirsiniz.Varsayılan gecikme yük yardımcı işlevini örnek olarak iyi bir şablon olmaya devam ediyor.
Tüm alır için gecikme yüklenen dll yüklenemedi
Linker tüm Imports yüklenen gecikme olarak belirtilen bir dll dosyasından yükleyebilirsiniz.Bkz: Delay-Loaded dll için tüm Imports yükleme daha fazla bilgi için.