• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Declara Kullanımı

  • Konbuyu başlatan Konbuyu başlatan askm
  • Başlangıç tarihi Başlangıç tarihi

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,746
Excel Vers. ve Dili
2010-2016
Kolay gelsin. Projelerde özellikle userform olanlarda Private Declare eklenerek kütüphane ekleniyor. Bu kütüphanelerin hangisi hangi işlem için kullanılır. Öğrenebileceğim bir yer var mı?
Bir de 2010 da çalışlan (32 veya 64 bitte de çalışan ) bir proje şimdi çalışmıyor. for i = 1 to 9 satırında i yi işaretleyerek hata veriyor.Hata olarak da Can't find project or library = Proje veya kütüphane bulamıyorum hatası veriyor. bu işlem için hangi kütüphane eklenmeli.
Mevcut kütüphaneler;
Private Declare PtrSafe Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Private Declare PtrSafe Function FindWindowA Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare PtrSafe Function EnableWindow Lib "user32" (ByVal hWnd As Long, ByVal bEnable As Long) As Long
Private Declare PtrSafe Function GetWindowLongA Lib "user32" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare PtrSafe Function SetWindowLongA Lib "user32" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
 
32 ve 64 bitte çalışması için bu bildirimi yapmanız gerekir.


#If VBA7 And Win64 Then

Private Declare PtrSafe Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Private Declare PtrSafe Function FindWindowA Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare PtrSafe Function EnableWindow Lib "user32" (ByVal hWnd As Long, ByVal bEnable As Long) As Long
Private Declare PtrSafe Function GetWindowLongA Lib "user32" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare PtrSafe Function SetWindowLongA Lib "user32" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Declare ptrsafe Function MyMathFunc Lib "User32" (ByVal N As Long) As Long

#Else

Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Private Declare Function FindWindowA Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function EnableWindow Lib "user32" (ByVal hWnd As Long, ByVal bEnable As Long) As Long
Private Declare Function GetWindowLongA Lib "user32" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLongA Lib "user32" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

#End If
 
32 bit 64 bit çevirmeyi veya ikisinde birden çalıştırmayı biliyorum. Benim sorduğum bu kütüphaneleri neden tanımladık. Hangi işlemlerde hangi kütüphaneler tanımlanıyor.
 
32 bit 64 bit çevirmeyi veya ikisinde birden çalıştırmayı biliyorum. Benim sorduğum bu kütüphaneleri neden tanımladık. Hangi işlemlerde hangi kütüphaneler tanımlanıyor.
Hep merak ettiğim, ne kadar çabalasam da, cevabını bulamadığım, sonunda uğraşmaktan bıktığım konudur. Çok net ifade ettiğiniz için teşekkürler. Cevabını bende merak ediyorum.
 
32 bit 64 bit çevirmeyi veya ikisinde birden çalıştırmayı biliyorum. Benim sorduğum bu kütüphaneleri neden tanımladık. Hangi işlemlerde hangi kütüphaneler tanımlanıyor.

Aradığınız cevap Türkçe değil ancak İngilizce olarak mevcut. "gdiplus.dll" çizim, "Advapi32.dll" Registry (hatırlayamadığım birkaç şey daha) vs.vs.

Google kullanın.

.
 
Geri
Üst