Uygulama 64 Bit API Listesi

Admin

Yönetici
Site Yöneticisi
Katılım
25 May 2018
Mesajlar
1,082
Puanları
113
Konum
İstanbul
Web sitesi
www.excelarsivi.com
Ad Soyad
Excel Arşivi
Eğer 64 Bit kurulumlu bir ofis uygulaması kullanıyorsanız, 32 Bit ofis versiyonlarına göre hazırlanan prosedürleriniz veya programlarınızda bu şekilde bir fonksiyon hatası alırsınız.

api-hata-min.png

Bu hatanın anlamı şudur;
Derleme hatası:

Bu projedeki kod, 64 bit sistemlerde kullanılmak üzere güncellenmelidir.
Lütfen Declare ifadelerini gözden geçirin ve güncelleyin, ardından bunları PtrSafe öz niteliğiyle işaretleyin.

Bu hatayı alıyoruz çünkü; kullanılan Api fonksiyonları 32 Bit'e göre hazırlandığı için, 64 bit sürümlerle uyumsuzluk gösterecektir. Böyle bir durumda, mevcut 32 Bit Api fonksiyonlarınızı ek'te bulunan dosyadaki 64 Bit Api fonksiyonları ile değiştirmeniz gerekir.

Ek'teki dosyayı indirdikten sonra yapmanız gereken; hata veren fonksiyon adını dosyada arayıp, bulunan satırdaki fonksiyonu alarak kodlarınızdaki hata veren satır ile değiştirmek olacak.

Örnek dosya görseli:
api-min.png

32 Bit API kullanımına örnek;
Declare Function GetWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
64 Bit API kullanımına örnek;
Declare PtrSafe Function GetWindow Lib "user32" Alias "GetWindow" (ByVal hwnd As LongPtr, ByVal wCmd As Long) As LongPtr

Her iki sürümde de kodlarınız çalışsın istiyorsanız, o zaman kodlarınızın bulunduğu pencerenin en üst satırında fonksiyonları bu şekilde belirtmeniz gerekir..
Kod:
#If VBA7 Then
    Private Declare PtrSafe Function GetWindow Lib "user32" (ByVal hwnd As LongPtr, ByVal wCmd As Long) As LongPtr
#Else
    Private Declare Function GetWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
#End If
 

Ekli dosyalar

Son düzenleme:
Üst Alt