Hej Det är mycket riktigt att man använder res-filer. Ett bra exempel på detta är "ATM" som följer med Visual Basic som exempelprojekt. Ja, det exemplet har jag sett ett antal gånger, det hjälper mig inte. Hej Ok så här gör Vi glöm trixen i ATM Jag tackar så hemskt mycket!Baka in ljud i exe filen
Jag undrar hur man går tillväga för att baka in ljud (.wav) i en Visual Basic .exe fil. Jag vet att detta går med hjälp av .res filer eller något sådant, men jag har ingen aning om hur man gör.
Någon som kan hjälpa mig?
M.v.h. Björn JohanssonSv: Baka in ljud i exe filen
/Hälsningar IvarSv: Baka in ljud i exe filen
.res filen ligger redan där, kompilerad eller vad man skall säga. Hur GÖR jag en .res fil? det är det jag är intresserad av.
vad jag kan förstå så är .RC filen som ligger där en okompilerad form av .res filen, men hur är den uppbyggd?
ljuden i .RC filen t.ex, de börjar med siffran 16, sedan ett .wav ljud.
sedan en ny rad, siffran har ökat med 32...
16 ATM_SOUND MOVEABLE PURE "USA.WAV"
48 ATM_SOUND MOVEABLE PURE "FRAN.WAV"
80 ATM_SOUND MOVEABLE PURE "GERM.WAV"
112 ATM_SOUND MOVEABLE PURE "ITALY.WAV"
144 ATM_SOUND MOVEABLE PURE "SPAIN.WAV"
176 ATM_SOUND MOVEABLE PURE "JAPAN.WAV"
men.. vad betyder ATM_SOUND? och MOVEABLE och PURE?
och "USA.WAV", hur vet .RC filen vilket ljud det är? det finns inga wave ljud i mappen där .rc filen ligger!
hoppas någon kan ge mig ett mer utförligt svar.
M.v.h. Björn JohanssonSv: Baka in ljud i exe filen
Steg för steg Tillverka Resource File Ljud wavfil
1. VB 6 Menyn Add-Ins - Add-In Manager
2. Välj VB 6 Resource Editor
3. Markera under Load Behavior Loaded/Unloaded Tryck Ok
Du får en (grön kub) uppe i menyn.
4. Klicka på (gröna kuben) klicka (längst till höger symbol)
Add Custom Resource Gå till tex. Windows\Media hämta wav fil
"Jag hämtade Ding.wav :-)"
5. Du fick nu en mapp CUSTOM och under den ligger
resorce 101 (Ding.wav)
6. I Vb6 menyn välj Projekt Explorer högerklicka i denna välj Add
längst ner Resource File.
7. Spara din Resource File som tex. Test.res och Öppna denna
8. I Projekt Explorer har du nu fått en Mapp Related Documents
och under den ligger din Test.res som innehåller
mappen CUSTOM resource 101 (Ding.wav)
*****************************************************
Nu börjar själva programmeringen under Form1
Option Explicit
'Spela upp Ljud från Resource Ding.wav
Private Declare Function sndPlaySound Lib "WINMM.DLL" _
Alias "sndPlaySoundA" (ByVal lpszSoundName As Any, _
ByVal uFlags As Long) As Long
Const SND_ASYNC = &H1
' Play asynchronously
Const SND_NODEFAULT = &H2
'Don 't use default sound
Const SND_MEMORY = &H4
' lpszSoundName points to a memory file
Dim SoundBuffer As String
Sub BeginPlaySound(ByVal ResourceId As Integer)
Dim ret As Long
'Viktigt den returnerade strängen konverteras till Unicode
SoundBuffer = StrConv(LoadResData(ResourceId, _
"CUSTOM"), vbUnicode)
ret = sndPlaySound(SoundBuffer, SND_ASYNC Or _
SND_NODEFAULT Or SND_MEMORY)
'Viktigt denna funktion är nödvändig för att kunna
'spela ljudet asynkront, dvs under tiden ljudet spelas
'är inte programmet låst.
DoEvents
End Sub
Private Sub Command1_Click()
Call BeginPlaySound(101)
End Sub
mvh
SvenSv: Baka in ljud i exe filen
jag lyckades baka in många ljud, och det fungerade helt utmärkt!
Tack SvenPon!
M.v.h. Björn Johansson