SND_MEMORY

26/01/2012 - 11:40 von Hermie | Report spam
Hallo!

Ich habe, wenn ich Wave-Dateien zusammenschneiden wollte, immer z. B. 2
Wave-Dateien eingelesen und dann eine neue Wavedatei daraus erzeugt und
auf die Platte gespeichert, z. B. so:

Put #m_lDestFileNum, 1, "RIFF" ' RIFF marker

Das auf die Festplatte-Speichern ist aber eigentlich nicht nötig.
Nun habe ich gesehen, dass ich auch direkt abspielen kann:

Call sndPlaySound(b(), SND_SYNC Or SND_MEMORY)

Weiß jemand vielleicht, wie ich so etwas wie oben (Put #...) in ein
Byte-Array kriege??

Vielen Dank!
Hermann
 

Lesen sie die antworten

#1 R.Kantas
27/01/2012 - 18:04 | Warnen spam
Weiß jemand vielleicht, wie ich so etwas wie oben (Put #...) in ein
Byte-Array kriege??



CopyMemory ist Dein Freund:

Declare Sub CopyMemory Lib "kernel32" Alias "RTLMoveMemory" (Dest as Any,
Src as Any,ByVal Lenght as Long)

Damit lassen sich Memorybereich einfach von Src nach Dest kopieren:

CopyMemory Dest,Src,NoOfBytes2Copy

Dest bzw. Src sind Adressen, also numerische Variablen (bei Arrays
beispielsweise A(0)) oder Stringvariablenm, wobei Stringvariablen mit ByVal
codiert werden.


Gruß rokas

Ähnliche fragen