Merhaba arkadaşlar tabiri caiz ise exe içine dosya gömme olarak tabir ettiğimiz brcc32 resource compiler ile derleyip res dosyası oluşturarak projemizin içine gömdüğümüz data dosyasını ben programın içerisinden çıkarıp bir klasörden okutmak istiyorum bunu yapabilirmiyiz programın içerisinden çıkartmak sorun diil ben resource decompiler ile bu işi hallederim önemli olan bu dosyayı programın içerisinden diil klasörden okutabilmek.
TResourceStream.Create(Instance, ResName, RT_RCDATA) bu şekilde diilde
TResourceStream.Create('C://dosya ismi', ResName, RT_RCDATA) gibi gösterip okutma şansımız varmı
veya herhangi bir şekilde o dosyayı klasörden gösterip RT_RCDATA dosyası olduğunu belirtip okutabilirmiyiz
RT_RCDATA dosyasını herhangi bir klasörden okutabilirmiyim ?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: RT_RCDATA dosyasını herhangi bir klasörden okutabilirmiy
Bir .exe içindeki kaynağı dosya olarak dışarı çıkartabilirsiniz.
Kod: Tümünü seç
function ExedenCikart(const KaynakAdi, DosyaAdi:String): Boolean;
var Kaynak:TResourceStream;
begin
//Result:=True;
try
Kaynak:=TResourceStream.Create(hInstance,KaynakAdi,RT_RCDATA);
try
Kaynak.Position:=0;
with TFileStream.Create(DosyaAdi,fmCreate) do try
try
Result:=CopyFrom(Kaynak,Kaynak.Size)=Kaynak.Size;
except
Result:=False;
end;
finally
Free;
end;
except
Result:=False;
end;
Kaynak.Free;
except
Result:=False;
end;
end;
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: RT_RCDATA dosyasını herhangi bir klasörden okutabilirmiy
Bir TFilestream oluşturmaya gerek yok. Direk Kaynak.SaveToFile yapabilirsiniz...sabanakman yazdı:Bir .exe içindeki kaynağı dosya olarak dışarı çıkartabilirsiniz.Kod: Tümünü seç
function ExedenCikart(const KaynakAdi, DosyaAdi:String): Boolean; var Kaynak:TResourceStream; begin //Result:=True; try Kaynak:=TResourceStream.Create(hInstance,KaynakAdi,RT_RCDATA); try Kaynak.Position:=0; with TFileStream.Create(DosyaAdi,fmCreate) do try try Result:=CopyFrom(Kaynak,Kaynak.Size)=Kaynak.Size; except Result:=False; end; finally Free; end; except Result:=False; end; Kaynak.Free; except Result:=False; end; end;
There's no place like 127.0.0.1
Re: RT_RCDATA dosyasını herhangi bir klasörden okutabilirmiy
Bunu neden yapmak istediğinizi anlamadım ama sonuçta elinizde bir dosya var ve bunu TFileStream ile açtığınızda bir stream içine almış olursunuz. Sizin bildiğiniz bir formatta dosya olduğu için istediğiniz şekilde kullanırsınız.Javs yazdı:veya herhangi bir şekilde o dosyayı klasörden gösterip RT_RCDATA dosyası olduğunu belirtip okutabilirmiyiz
There's no place like 127.0.0.1
Re: RT_RCDATA dosyasını herhangi bir klasörden okutabilirmiy
biraz açıklama yapayım 
31 yaşındayım;
Devlet memuruyum;
bilgisayar ile 25-26 yaşlarında tanıştım Afkanistanda askerlik yaptım cep telefonu kullanamadığımız için(yasak olduğu için diil çekmediği için
) taburda internet olduğu için msn denen bir icat vardı ozamanlar kuzenim msn den görüşelim demişti nasıl olucak ben bilmiyorum ki ben sana bir msn adresi alayım dedi ordan görüşelim sabit telefondan görüşebiliyoruz bu arada neyse bana bir meil adresi ve şifresi verdi ben geçtim bilgisayarın başına yanımdaki arkadaşlara msn'i açtırdım oturdum başına başladım kullanıcı adımı yazmaya ama bir sıkıntı var @ işaretini yapamıyorum
baya bi debelendikten sonra yanımda oturan arkadaştan rica ettim ve bilgisayarla tanışma maceram başladı neyse askerlik bitti köye internet gelmiş bi arkadaşda internet kafe açmış arkadaşlar orda takılıyolar onların yanında bende takılıyorum chat mhat hatun muhabbetleri derken ozamanlar gençlik merak falan bende bir bilgisayarın başına oturdum zaman geçtikce hayatımızdan fırsat buldukça bilgisayarın başına oturmaya başladık bursada fiat'ın araba fabrikasında işe başladım 3 yıla yakın çalıştım resmen köleliğin günümüze uyarlanmış haliydi neyse eve geldiğimde canım sıkılıyor uğraşıcak bişi lazım 2008 de ilk bilgisayarımı aldım hala kullanıyorum bu dönemlerde internet üzerinde meşhur olan Camfrog diye sesli görüntülü chat yapılan bir platform var orda takılıyoruz arkadaşlar gırgır şamata zaman geçiyor tabi ortamda hacker'lar falan dolanmaya başladı (hacker dediğime aldırmayın tabiki meraklı gençlik sadece) neyse öyle böyle bir şekilde arkadaş kardeş muhabbetine bana gönderilen bir dosyayı bilgisayarımda çalıştırdım ve bilgilerim falan arkadaş diye bildiğimiz bu meraklı gencin eline geçti sanırım bu ki bende bir hırs uyandırdı neyse ogünden sonra trojen falan bir merak saldı ki sormayın içine girdikce daha fazla merak salıyor ve kurtulamıyorum kendi kendime inat yaptım ve kendimi geliştirmeye başladım bu vesileyle internet'de dolaşırken iki site ile tanıştım birisi crack üzerine diğeri trojen keylogger velashıl tamamen illegal
tamda benim arayıp bulamadığım şey. Başladık takılmaya tabi uğraşırken sitede bulunanlara soru falan soruyoruz hem yeni üye hemde meraklı olduğumuz ve çok soru sorduğumuz için birde takıldığımız sitenin yaş ortalaması biraz düşük olduğu için gençlerde hem ego var hemde bilende zaten sınırlı bilgiye sahip bu daha çok zoruma gitti o hırsla uğraşa uğraşa nasıl bir hırs yaptıysam trojen sitesinde admin'lik yapmaya başladım kendi kendimize dosya analizleri crack serial bulma trojenleri antivisürlerden kaçırma gibi işler üzerinde uğraşmaya kendimi geliştirmeye başladım ama tabi hepiniz bilirsinizki bu işin içine girdinmi yetinmeyi bilmiyor insan. Zaman geçtikce bişiler yapmaya yaptığımız şeylerin nasıl yapıldığını gösteren eğitim videoları çekmeye başladık tabi birçoğumuzun belki aşina olduğu lena diye yabancı bir arkadaşın crack eğitim seti vardır Türkçe'ye çevrilmiş bu seti izledik kendimizi geliştirmek için ogün bugündürde içimde bir ukte böyle bir eğitim seti yapmak ozamanlar bizim için hayal programlama ile daha alakam bile yok sadece mantık yerleşiyor. zaman geçti ben özel sektörü bıraktım çünkü resmen ömür törpüsüydü hayatım boyunca oturum hiç ders çalışmadım okulu hep kaç puanla geçiliyorsa okadar puanla geçtim +1 puan fazla alayım yanımda bulunsun demedim tabi hayatın yükü omuzlarımıza basınca 27 yaşından sonra oturup 1 yıl kpss ye hazırlandım özel sektörde biriktirdiğim para ile dershaneye gittim ders çalışıyorum ama kafamda hep bilgisayar var neyse öyle böyle bir yılı bitrdim kpss ye girdik şükürler olsun devlet kapısında ekmek sahibi olduk bu saatten sonra durulurmu bilgisayara olan ilgim bittimi bitmedi geçensene öss diye dile getireyim adı okadar çok değiştiki :d sınava girdim uzaktan eğitim bilgisayar programcılığı yazdım oda geldi okumaya başladım ama eskisi gibi okulu geçecek kadar diil oturup her dersi izledim çünkü sevdiğim bişiler ile uğraşıyorum sınıfta 2. oldum bu yıl okul bitecek sonra ki hedeflerde var tabiki dgs mühendislik fakültesi falan neyse onlar bir kenara dursun şimdi geleyim bir zamanlar izlediğim crack görsel eğitim seti gibi bir set hazırlamaya bunu hazırladım ama insan işte yetinmiyor şimdi elimde bulunan crack eğitimi için çekilmiş swf formatındaki dosyaları tek dosya haline getirip treeview de listelenmiş olan isimlerine tıkladığımda dosyaları TShocwaveFlash nesnesinde görüntülemek sıkıntım ise res dosyası olarak tek dosya haline getirdim çok büyük bir dosya olacağı için yüzlerce video var bu dosyayı exe ye gömmek yerine exenin bulunduğu klasöre atıp ordan dosyaları okutmak olacak tabi dosyayı diske yazdırıp yol gösterek diil hafızaya yazdırıp hafızadan TShockwaveFlash veya TWebBrovser nesnesine link gösterip okutmak bu kısmını daha başaramadım ama çalışmalarım hala sürüyor
bu arada baya yazmışım biraz daha uğraşsam tek çiltlik kitap olucakmış sanırım
neden bukadar yazdım onuda bilmiyorum belki sıkıntıdan belki zaman olduğu içindir orasını sorgulamayın bende bilmiyorum 

31 yaşındayım;
Devlet memuruyum;
bilgisayar ile 25-26 yaşlarında tanıştım Afkanistanda askerlik yaptım cep telefonu kullanamadığımız için(yasak olduğu için diil çekmediği için



bu arada baya yazmışım biraz daha uğraşsam tek çiltlik kitap olucakmış sanırım


- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: RT_RCDATA dosyasını herhangi bir klasörden okutabilirmiy
O zaman dosyaları hiç .exe içerisine gömmeyin, bunun yerine .exe ile aynı klasöre ilgili dosyaları .exe ile aynı klasöre atmalısınız. Eğer çok fazla dosya olacaksa bir alt klasöre atılabilir ve dosyalar buradan yüklenebilir.
Kod: Tümünü seç
var DosyaAdi:String;
begin
...
DosyaAdi:=ExtractFilePath(Application.ExeName)+'AltKlasor\DosyaAdi.uzn';
Modul.LoadFromFile(DosyaAdi);
...
//Application.ExeName yerine ParamStr(0) da kullanılabilir
end;
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .