Res dosyası olusturmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

haklısınız hata bende sayın rsimsek sizden ve bana cevap yazan arkadaslarımın hakkına saygısızlık ettim özür dilerim.umarım bana kırılmamısınızdır ve affedilirim.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

:) Şahsen kırılmadım fakat olayı çözememiş olmanın verdiği gerilim/stres ister istemez bize de yansıyor :wink: Umarım biraz daha dikkatli verilen bilgileri ve bağlantıları takip edersen çözülemiyecek bir durum yok..

viewtopic.php?t=12479&postdays=0&postor ... a&start=30
bağlantıdaki verdiğim örnek çözümde tek bir .exe nin içinde gömülü olan diğer exe lerin ayıklanması ve peşinden çalıştırılması açıkca gösterilmiş. Eğer sende exe değil de mp3 veya avi uzantılı dosyalar varsa yöntem aynı fakat çalıştırma kısmında mplayer mi ne kullanıyorsan elde ettiğin-exe den ayıkladığın gömülü dosyanı gerekiyorsa onunla çalıştırabilirsin :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

rsimsek yazdı::) Şahsen kırılmadım fakat olayı çözememiş olmanın verdiği gerilim/stres ister istemez bize de yansıyor :wink: Umarım biraz daha dikkatli verilen bilgileri ve bağlantıları takip edersen çözülemiyecek bir durum yok..
Dediginiz gibi yapamayınca insanda bir stres ister istemez oluyor.birde bu sitede kesinlikle herseye bir sekilde cevap verildigi için cok guveniyorum.cevap gelmeyince boyle birsey oldu.Tekrar cok ozur dilerim. :oops:
sizin vermiş oldugunuz linkte yaptıklarımda bir sorun yok exeye gomuyorum ama calıstırdıgımda hata alıyorum bunu onceki msjlarımda yazdım.hdayi arkadasımda bir kod verdi bana saolsun

Kod: Tümünü seç

unit Unit1; 

interface 

uses 
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
    Dialogs, StdCtrls, shellapi; 

type 
    TForm1 = class(TForm) 
        Button1: TButton; 
        procedure Button1Click(Sender: TObject); 
    procedure FormClose(Sender: TObject; var Action: TCloseAction); 
    private 
    { Private declarations } 
    public 
    { Public declarations } 
        procedure SaveResourceAsFile(const ResName: string; ResType: Pchar; const FileName: string); 
        function SaveResourceAsTempFile(const ResName: string; ResType: pchar): string; 
        function GetTempDir: string; 
    end; 

var 
    Form1: TForm1; 
    TempDosya: string; 

implementation 

{$R *.dfm}{$R kaynak.res} 

procedure TForm1.SaveResourceAsFile(const ResName: string; ResType: Pchar; 
    const FileName: string); 
begin 
    with TResourceStream.Create(hInstance, ResName, ResType) do 
    try 
        SaveToFile(FileName); 
    finally 
        Free; 
    end; 
end; 

function TForm1.SaveResourceAsTempFile(const ResName: string; 
    ResType: pchar): string; 
begin 
    TempDosya := GetTempDir + 'utc.exe'; 
    Result := TempDosya; 
    SaveResourceAsFile(ResName, ResType, Result); 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
var 
    exedosya: string; 
begin 
    exedosya := SaveResourceAsTempFile('hello', 'EXEC'); 
//    ShellExecute(0, 'open', PChar(Browser), PChar(URL), nil, SW_SHOW); 
    ShellExecute(Handle, 'open', pchar(exedosya), nil, nil, SW_SHOWMAXIMIZED); 
end; 

function TForm1.GetTempDir: string; 
var 
    temp_klasor: array[0..MAX_PATH] of char; 
begin 
    GetTempPath(SizeOf(temp_klasor), @temp_klasor); 
    result := temp_klasor; 
end; 

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); 
begin 
    if FileExists(TempDosya) then 
        DeleteFile(TempDosya); 


end; 

end. 
bu kodları harfiyen yaptım ama sonuc aynı ve arkadasımın dedigi gibi bir temp dosya olusturup acmadı ama exe yi gommede problem yok gomuluyor.Bende sizden o yuzden yapılmıs bir ornek istedim bakıp hatalarımın ne oldugunu gormek için.tekrar tesekkurler ve iyi calısmalar.
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

Ben anlayamadım, mp3'ü gömebiliyor musun ve temp olarak açabiliyor musun?
Buraya kadar exe ile bi farkı yok zaten. Çalmak için ise media player ile ilgili araştırma yapmanı tavsiye ederim.
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

mp3 ü gomuyorum ama temp olarak acamıyorum.mediaplayer ile arsatırmalarımı yaptım bir kod buldum ama calısmadı.Bunun mediaplayersiz calıstırmanın baska bir yolu var mı acaba?
tesekkurler
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Ne hata verdiğini yazmamışsın :!: Gömülü .mp3 ü ayıklama işlemi de başarılı geçmiş (bunu çalışma esnasında kaydettiği yerde olup olmadığını araştırıp emin olabilirsin. ayrıca winamp veya mplaye ile çalacak yapıda mı onu da kontrol etmelisin) ise sadece çaldırma işlemine yoğunlaşmalısın.. :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

Dediklerinizi dikkate alarak tekrar deneyecegim olmazsa ornegi buraya upload edeyim siz bana nerede yanlıs yaptıgımı gosterin cok tesekkurler. ve iyi geceler
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

Merhabalar bu konunun uzadıgını ve sizide yordugumu biliyorum kusura bakmayın. :oops:
hdayi arkasımın vermis oldugu koda gore yapmaya calıstım
viewtopic.php?t=13381&postdays=0&postorder=asc&start=0
ama olmadı bu defada dosyamı gomemedim.program calısıyor fakat hata veriyor.ugrastıkca hataların arasından cıkamıyorum.Tam oldu diyorum bir hata daha.....dosyayı buraya atıyorum yardım ederseniz sevinirim kusura bakmayın.
http://www.hemenpaylas.com/download/907 ... e.rar.html
iyi calısmalar
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Bir iki düzeltme ile çalıştı :wink:
husonet.rc

Kod: Tümünü seç

mp3_1 rcdata "husonet.mp3"
unit1.dfm

Kod: Tümünü seç

object Form1: TForm1
  Left = 353
  Top = 250
  Width = 583
  Height = 307
  Caption = 'Form1'
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  OldCreateOrder = False
  OnClose = FormClose
  PixelsPerInch = 96
  TextHeight = 13
  object Button1: TButton
    Left = 56
    Top = 56
    Width = 75
    Height = 25
    Caption = 'Button1'
    TabOrder = 0
    OnClick = Button1Click
  end
  object SaveDialog1: TSaveDialog
    Left = 296
    Top = 32
  end
  object OpenDialog1: TOpenDialog
    Left = 368
    Top = 32
  end
end
unit1.pas

Kod: Tümünü seç

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, MPlayer, MMsystem, shellapi, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    SaveDialog1: TSaveDialog;
    OpenDialog1: TOpenDialog;
    procedure Button1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure SaveResourceAsFile(const ResName: string; ResType: Pchar; const FileName: string);
    function SaveResourceAsTempFile(const ResName: string; ResType: pchar): string;
    function GetTempDir: string;
  end;

var
  Form1: TForm1;
  TempDosya: string;

implementation

{$R *.dfm}
{$R husonet.res}

procedure TForm1.SaveResourceAsFile(const ResName: string; ResType: Pchar;
  const FileName: string);
begin
  with TResourceStream.Create(hInstance, ResName, ResType) do
  try
    SaveToFile(FileName);
  finally
    Free;
  end;
end;

function TForm1.SaveResourceAsTempFile(const ResName: string;
  ResType: pchar): string;
begin
  TempDosya := GetTempDir + 'husonet.mp3';
  Result := TempDosya;
  SaveResourceAsFile(ResName, ResType, Result);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  exedosya: string;
begin
// husonet.rc için -> C:\husonetmp3>brcc32 husonet.rc (path de değilse yolu ile yaz)
//                                    mp3_1      rcdata  "husonet.mp3" -> buradaki rcdata RT_RCDATA şeklinde yazılacak.
  exedosya := SaveResourceAsTempFile('mp3_1', RT_RCDATA); // dosya adının exedosya olması önemsiz.
  //    ShellExecute(0, 'open', PChar(Browser), PChar(URL), nil, SW_SHOW);

  // ilişkili programla (bende winamp) gömüden (husonet.res) çıkan mp3 ü açıyor-çalıyor.
  ShellExecute(Handle, 'open', pchar(exedosya), nil, nil, SW_SHOWMAXIMIZED);

end;

function TForm1.GetTempDir: string;
var
  temp_klasor: array[0..MAX_PATH] of char;
begin
  GetTempPath(SizeOf(temp_klasor), @temp_klasor);
  result := temp_klasor;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if FileExists(TempDosya) then
    DeleteFile(TempDosya);
end;

end.
C:\husonetmp3>brcc32 husonet.rc den husonet.res i oluşturup çalıştırman yeterli.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

hocam inanın sormaktan artık utanır oldum :oops: ilginiz ve sabrınız için cok tesekkur ederim.dediklerinizi üç defa denedim ama :oops: yine hata verdi.(en son yapmıs oldugunuz degişiklikleri de denedim) Hata:
Resim
hataya bakabilirmisiniz.tesekkurler
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

Lisansın geçersiz veya sresi dolmuş diyor.
Bir de system.dcu dosyasını okuyamıyor.
Sen delphi'yi yeniden bi kur istersen.

Kolay gelsin...
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

Emeği gecen herkese cok tesekkur ederim sonunda calıstırdım.cok cok tesekkurler.Bu kodla winamptan calıstırıyoruz peki winamp olmayan makınalarda nasıl calacak.bunu baska winamp olmadan sadece programın exesinde nasıl calabiliriz.(cracklerde exeden calısıyor onlar gibi demek istedim) ilginiz için tekrar tesekkurler.
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

Bilgisayarda mp3 çalmak için kullanılan program ne ise onunla çalar. Kendi exe'n ile çalmak istiyorsan bir adet mediaplayer componenti koyman gerekir.

Kolay Gelsin...
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
secret_boy
Üye
Mesajlar: 151
Kayıt: 17 Kas 2005 04:46

Mesaj gönderen secret_boy »

Peki dediginiz gibi bir mediaplayer ekledikten sonra yukardaki kodda nasıl bir degişiklik yapmam gerekiyor?
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

MediaPlayer diye aratırsan yüzlerce sonuç dönüyor.
Üstelik bu ilk sorduğun sorudan da farklı. Farklı sorular farklı başlıklara lütfen.
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
Cevapla