Forma Müzik Eklemek

Yapmak istediğiniz işle ilgili doğru bileşeni bulmak için burayı kullanabilirsiniz. Sadece bulmak için, diğer sorular Programlama forumuna lütfen.
Forum kuralları
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Cevapla
arjen
Üye
Mesajlar: 4
Kayıt: 03 Oca 2011 11:03

Forma Müzik Eklemek

Mesaj gönderen arjen » 05 Oca 2011 02:48

Arkadaşlar ben yazdığım programa müzik gömmek istiyorum kullanıcı programı açar açmaz hangi pc'de olursa olsun belirlediğim müziğin çalmasını istiyorum bunu yapabiliyormuyuz?Nası yapıyoruz?

Kullanıcı avatarı
KoPilot
Üye
Mesajlar: 164
Kayıt: 05 Eki 2007 07:02

Re: Forma Müzik Eklemek

Mesaj gönderen KoPilot » 06 Oca 2011 05:42

arjen yazdı:Arkadaşlar ben yazdığım programa müzik gömmek istiyorum kullanıcı programı açar açmaz hangi pc'de olursa olsun belirlediğim müziğin çalmasını istiyorum bunu yapabiliyormuyuz?Nası yapıyoruz?
Tabii ki yapabilirsin...
embed etmek, exeye dosya gömmek diye arattırırsan yeterli sonuç bulursun.
Dosyalarınızı kendi bulutunuza yedekleyin. Yandex Disk
Eyvallah..

RamazanG
Üye
Mesajlar: 73
Kayıt: 16 Tem 2010 02:38

Re: Forma Müzik Eklemek

Mesaj gönderen RamazanG » 10 Oca 2011 03:30

Wave dosyasi nasil calinir nasil Exe icine gomulur ?

Bir cok program kucuk wave dosyalarini dagitmaktansa dogrudan programin icinden calmaktadir. Bu islemi Delphi'den yapmak icin:

1. Project|Resources komutu verin.
2. Gelen pencerede sag tiklayip New|User Data komutu verin.
3. Resource Type olarak "WAVE" girin.
4. Istediginiz wav uzantili dosyayi secin.
5. Delphi varsayilan olarak WAVE_1 ismini verecektir. Bunu herhangi bir sayiyla degistirin. (Uzerinde sag tiklaip ReName komutu vererek) Örnegin: 1

Asagida benim kullandigim procedure'lari veriyorum:

Kod: Tümünü seç

  
function PlayWavFromResource(ResID: Integer): Boolean;
begin
Result := PlaySound(PChar('#' + IntToStr(ResID)), HInstance, SND_RESOURCE or SND_ASYNC);
end;

function PlayWavFile(const FileName: string): Boolean;
begin
Result := PlaySound(PChar(FileName), 0, SND_ASYNC);
end;

procedure StopWav;
var buffer: array[0..2] of char;
begin
buffer[0] := #0;
PlaySound(Buffer, 0, SND_PURGE);
end;
PlayWavFromResource procedure'i programin icerisinde gomulu olan wave dosyasini calacaktir. Parametre olark gonderdiginiz deger yukarda ismini degistirdiginiz (WAVE_1 -> 1) degerdir.

Ornegin:

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
begin
StopWav; 
PlayWavFromResource(1); 
end;
Notlar:
- Resource Type olarak sadece WAVE girmeniz gereklidir.
- Cok buyuk Wave dosyalarini exe'nin icine gommek yerine ayri dosya olarak dagitin. Disardaki bir wave dosyasini calmak icin PlayWavFile isimli procedure'i kullanabilirsiniz.
- StopWav isimli procedure o anda sistemde calinan bir ses dosyasi varsa calmayi durduracaktir.
- PlayWavFromResource ve PlayWavFile isimli procedure'lar calma islemini arka planda yapacaktir. Yani programiniz ses dosyasi calarken calismaya devam edebilir.

Cevapla