• DİKKAT

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

Excelde Wav dosyası fonksiyonunda 32 bit 64 bit hatası

  • Konbuyu başlatan Konbuyu başlatan sserdar
  • Başlangıç tarihi Başlangıç tarihi
Katılım
8 Şubat 2006
Mesajlar
37
Merhaba,
32 bit bilgisayar işletim sisteminde çalışan wav doyası programı 64 bitte çalışmıyor. Sorunu nasıl çözebilirim.
---
Combile error:
The code in this project must be updated for use on 64-bit systems.
Please review and update Declare statements and then mark them with
the PtrSafe attribute.

hata mesajını veriyor....


Örnek Program

Declare Function sndPlaySound32 Lib "winmm.dll" Alias _
"sndPlaySoundA" (ByVal lpszSoundName As String, _
ByVal uFlags As Long) As Long
Sub WavCal_10Saniye()
Call sndPlaySound32("C:\Users\pc\Desktop\BİLGİ YARIŞMASI PRG\10saniye.wav", 1)
End Sub

Teşekkürler
 
API deklarasyonu 64 bit sisteme göre güncellenmesi gerekir.

Kodu aşağıdaki gibi kullanırsanız çalışacaktır. Aşağıdaki vurgu eklenmiştir.

Kod:
Declare [COLOR=Blue][B]PtrSafe [/B][/COLOR]Function sndPlaySound32 Lib "winmm.dll" Alias _
"sndPlaySoundA" (ByVal lpszSoundName As String, _
ByVal uFlags As Long) As Long

Sub WavCal_10Saniye()
Call sndPlaySound32("C:\Users\pc\Desktop\BİLGİ YARIŞMASI PRG\10saniye.wav", 1)
End Sub
 
32 Bit ve 64 bit bilgisayara göre hata denetemi yaptırıp.
32 bitte 32 bite uygun programı,
64 bitte 64 bite uygun programı,
otomatik kontrolle nasıl yaptırabilirim?

Yardımcı olursanız memnun olurum.
 
Bu durumda aşağıdaki gibi kullanmalısınız.

Kod:
#If VBA7 And Win64 Then
    Declare PtrSafe Function sndPlaySound32 Lib "winmm.dll" Alias _
        "sndPlaySoundA" (ByVal lpszSoundName As String, _
        ByVal uFlags As Long) As Long
#Else
    Declare Function sndPlaySound32 Lib "winmm.dll" Alias _
        "sndPlaySoundA" (ByVal lpszSoundName As String, _
        ByVal uFlags As Long) As Long
#End If

Sub WavCal_10Saniye()
Call sndPlaySound32("C:\Users\pc\Desktop\BİLGİ YARIŞMASI PRG\10saniye.wav", 1)
End Sub
 
Zeki bey sorun çözüldü.
Yardımınız için çok teşekkür ederim.
 
Geri
Üst