All in One Program yapmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

hdayi yazdı:Embeded dosyaları kullanmanın iki yolu var. Birincisi desteklenen türden dosyaları memoryden çalıştırmak, wav dosyaları gibi. Diğeri desteklenmeyen dosyaları temp olarak bir yere kopyalamak ve oradan çalıştırmak. Makalede anlatılmışş zaten bu.
Dostum sağol yardımın için. Yalnız ben şahsen her bilgisayardan çıkmadan tempin içerisini bilerim boşuna yer kaplamasın diye. Öyle biri daha olsa benim gibi ki çoğu yapar bunu gereksiz dosyaları silen oprogramlarla . ikinci pc yi açınca programı çalıştıramaz çünkü ana formdaki linklerdeki o exeler olmayacağından program çalışmayacak. amacım tekrar söylüyorum tek bir exe dosyası kurulum bitince. ve diğer exeler onun içine gömülecek. yani ana exe delphi projen 1 mb atıyorum. 4 tane de 500 kblık exe o da iki mg yapar. install ettiğinde kişi tek dosya olacağından o tek dosyanın özelliklrine tıklayınca 3 mb olması lazım yani diğer exeler içinde olacağından

anşatabildinm artık sanırım
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

MANDRAKE yazdı: İçindeki exelerin kopyalanmaması sadece ana formdan kurulması. Tamamen güvenlik ve kopyalanmaya kesin çözüm. ondan bu kadar sizleri rahatsız ediyorum
amacın buysa doğru yolda olduğunu pek söyleyemiycem.
sonuçta bu dosyaları exenin dışına extract edecen ve kullanıcı bunu kopyalayacak.
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

sadettinpolat yazdı:
MANDRAKE yazdı: İçindeki exelerin kopyalanmaması sadece ana formdan kurulması. Tamamen güvenlik ve kopyalanmaya kesin çözüm. ondan bu kadar sizleri rahatsız ediyorum
amacın buysa doğru yolda olduğunu pek söyleyemiycem.
sonuçta bu dosyaları exenin dışına extract edecen ve kullanıcı bunu kopyalayacak.
Hocam böyle programlar fazlasıyla forum sitelerinde var. Ve ben indirdiğim zaman exeleri göremiyorum. Bir tek exe iniyor ve exenin boyutu 15 MB ne biliyim 70 MB falan hepsini adam içine gömmüş diğer exeleri.

Olmazsa size bir tane link atayım inceleyin All in One tarzı bu programlardan
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Daha önceki bilgilerden derlenerek project1.exe ve project2.exe yi ayrı ayrı project.exe içinden çalıştırdım.

proje.rc
EXE1 RCDATA "C:\Program Files\Borland\Delphi7\Projects\all_in_one\Project1.EXE"
EXE2 RCDATA "C:\Program Files\Borland\Delphi7\Projects\all_in_one\Project2.EXE"
varsa başka exe ler de eklenir.

Ana projeyi (project.exe) derlemeden önce
C:\Program Files\Borland\Delphi7\Projects\all_in_one>brcc32 proje.rc

ve project.dpr deki {$R *.res} satırının altına {$R proje.res} yazıp derlenecek.

Kod: Tümünü seç

program Project;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}
{$R proje.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Sadece iki button konulan project.dpr nin unit1.pas aşağıdaki gibidir;

Kod: Tümünü seç

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  SecRes: TResourceStream;
  pTemp: pchar;
  TempPath, ExeName: string;
begin
  SecRes := TResourceStream.Create(hInstance,'EXE1', RT_RCDATA);
  pTemp  := StrAlloc(MAX_PATH);
  GetTempPath(MAX_PATH, pTemp);
  TempPath := String(pTemp);
  StrDispose(pTemp);
  SecRes.SaveToFile(TempPath + 'Project1.EXE');
  SecRes.Free;
  WinExec(PChar(TempPath + 'Project1.EXE'), SW_SHOW);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  SecRes: TResourceStream;
  pTemp: pchar;
  TempPath, ExeName: string;
begin
  SecRes := TResourceStream.Create(hInstance,'EXE2', RT_RCDATA);
  pTemp  := StrAlloc(MAX_PATH);
  GetTempPath(MAX_PATH, pTemp);
  TempPath := String(pTemp);
  StrDispose(pTemp);
  SecRes.SaveToFile(TempPath + 'Project2.EXE');
  SecRes.Free;
  WinExec(PChar(TempPath + 'Project2.EXE'), SW_SHOW);
end;

end.
Hepsi bu :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

hocam gerçekten emeğinize sağlık
hemen deniyecem
inşallah başarırız bunu.
Allah razı olsun
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

MANDRAKE yazdı:Dostum sağol yardımın için. Yalnız ben şahsen her bilgisayardan çıkmadan tempin içerisini bilerim boşuna yer kaplamasın diye. Öyle biri daha olsa benim gibi ki çoğu yapar bunu gereksiz dosyaları silen oprogramlarla .
Hocam silinsin zaten sen exenin işi bitince sileceksin. her seferinde exe'yi çıkaracaksın, çalıştıracaksın, işin bitince sileceksin.
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

MANDRAKE yazdı: Hocam böyle programlar fazlasıyla forum sitelerinde var. Ve ben indirdiğim zaman exeleri göremiyorum. Bir tek exe iniyor ve exenin boyutu 15 MB ne biliyim 70 MB falan hepsini adam içine gömmüş diğer exeleri.

Olmazsa size bir tane link atayım inceleyin All in One tarzı bu programlardan
maksat gizlemekse dosyaların görebileceğiniz bir yerde olması beklenemez zaten. siz birde filemon benzeri bir programla ilgili programın hangi dosyalarla işlem yaptığını bir takip edin isterseniz, bakalım karşınıza neler çıkacak :)
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

Sadettin Hocam
dedikleriniszi harfiyyen uyguladım.
Compile sırasında sorun yapıyo. Herhangi bir hata vermiyo ama aşağıda error tabında bunlar çıkıyo ve compile edemiyorum:(
Bunu da başarırsam proje bitmiş olacak allahın izniyle...

Screenshotunu atıyorum

Resim
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

.................... (vazgeçtim)
En son fduman tarafından 01 Ara 2005 07:56 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

bir resource'u birden fazla belirtmişsin projede, 1 yerde bir sefer belitmen yeterli.
res dosyasının içinde intor ve mainicon diye tanımladığın dosyalarda hata var. muhtemelen path yanlıştır, dosyaları bulamamıştır.
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

zaten bir yerde ana dpr dosyada belirttim o kadar :(
diğer mohicon falan nedir onu anlayamadım??
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2380
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Mesaj gönderen freeman35 »

Zip Kullanmayı denedinmi ? TurboPower ın (opensource) paketini kullanabilirsin. ana exe nin haricindekileri ziple gerektiğinde tekrar extract et.
ben olsam ufak olan exe leri DLL e çevirir ana programdan kullanırdım.

Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Kullanıcı avatarı
AHMERT
Üye
Mesajlar: 9
Kayıt: 02 Ara 2005 08:35
Konum: GAZİANTEP

SELAM

Mesaj gönderen AHMERT »

Merhaba Mandreke

siteminden bu projenin senin için ne kadar önemli oldugunu anlıyorum..
modüler yapıda bi program hazırlamak istiyosun anladığım kadarıyla.
1. si diğer 4 exe nide anaformunun içerisinde tek tasarım olarak hazırla diyecegim fakat bunu yapmak zor gelecektir...

2. si mademki install shell de path ekledin anaformunun yani 4 exe yi çagıracak formunun create sine ilk çalıştırmada diğer 4 exe yi senin belirlediğin adreslere kesip kopyalamasını sağlayacak komutu yaz ve anaformunun üzerindeki buttonlarada bu adreslerdeki exe yi çagıracak winexec komutunu tasarımda koy gitsin. zaten anaformunla aynı dizindelermiş. program ilk çalıştıgında kendi adresini bulacaktır. sadece yanına kopyalanacak exeleri yaz... umarım anlatabilmişimdir... :?

3. sü senin diger 4 exenin neden görünmesini istemediğini anlayamadım... isteyen yinede bulur onu... :roll:

4. sü eger böyle modüler tarzda yazmak istiyosan programına bi ayarlar veri tabanı aklersin ve bütün tasarımları tek exe ye gömüp ayarlar veri tabanındaki değişikliklere göre diger özellikleri açar veya kapatırsın böylece exeleri oraya buraya kaçırmaktan kurtulursun... kolay gelsin :wink:
Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Mesaj gönderen mege »

bundan birkaç yıl sonra(bilemedin 3-5 belki 7) aa bunlarla boşuna vakit kaybetmişim demek istemiyorsanız :) hiçbirşeyi gizlemeye çalışmayın. :D
.-.-.-.-.-.-.-. ^_^
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Re: SELAM

Mesaj gönderen MANDRAKE »

AHMERT yazdı:Merhaba Mandreke

siteminden bu projenin senin için ne kadar önemli oldugunu anlıyorum..
modüler yapıda bi program hazırlamak istiyosun anladığım kadarıyla.
1. si diğer 4 exe nide anaformunun içerisinde tek tasarım olarak hazırla diyecegim fakat bunu yapmak zor gelecektir...

2. si mademki install shell de path ekledin anaformunun yani 4 exe yi çagıracak formunun create sine ilk çalıştırmada diğer 4 exe yi senin belirlediğin adreslere kesip kopyalamasını sağlayacak komutu yaz ve anaformunun üzerindeki buttonlarada bu adreslerdeki exe yi çagıracak winexec komutunu tasarımda koy gitsin. zaten anaformunla aynı dizindelermiş. program ilk çalıştıgında kendi adresini bulacaktır. sadece yanına kopyalanacak exeleri yaz... umarım anlatabilmişimdir... :?

3. sü senin diger 4 exenin neden görünmesini istemediğini anlayamadım... isteyen yinede bulur onu... :roll:

4. sü eger böyle modüler tarzda yazmak istiyosan programına bi ayarlar veri tabanı aklersin ve bütün tasarımları tek exe ye gömüp ayarlar veri tabanındaki değişikliklere göre diger özellikleri açar veya kapatırsın böylece exeleri oraya buraya kaçırmaktan kurtulursun... kolay gelsin :wink:
Dostum gerçekten açıklamaların için ne kadar teşekkür etsem azdır. Baya emk harcamışsın allah razı olsun..
Ya yukarıda da caps koydum patım sadettin hocanın dediği gibi ama o hataları verdi. Compile edemiyorum:(
Daha dün indirdim bir tane bu tarz program adam tek exe dosya ile işi bitirmiş. Labellara tıkladım hemen kurulum yaptı yani exe leri yok. 20 mb exe tek dosya..
Resource da tek belirttiğimm halde bunlar çıkıyo onu da anlamadım
Cevapla