PDA

View Full Version : ساخت فايل EXE با دلفي



h_mohamadi
یک شنبه 26 دی 1389, 14:47 عصر
سلام بر دوستان خوبم
من چند تا فايل دارم که آنها را با استفاده از برنامه winrar و طبق آموزشي که دوستان در تاپيک
http://barnamenevis.org/showthread.php?143448-%D8%A8%D8%A7%D8%B2-%DA%A9%D8%B1%D8%AF%D9%86-%D9%81%D8%A7%DB%8C%D9%84-%D8%AF%D8%B1-winrar&p=676358
گذاشته اند تبديل به يک فايل EXE مي کنم ولي مشکلاتم اين است که هر بار که ويندوز عوض مي کنم و يا مي خواهم از يک سري فايل هايي که در شبکه است استفاده کنم نمي شود.
تصميم گرفتم برنامه اي بنويسم که همن کاري که در آموزش است را خود دلفي انجام دهم ولي نمي دانم از چه کامپوننتي براي اينکه چند فايل را در يک پکيج EXE قرار داده و با کليک بر روي آن فايل را اکسترکت کرده و يک فايل را اجرا نمايد.
از دوستان خواهش مي کنم من را راهنمايي فرمائيد که از چه کامپوننتي و چه روشي استفاده کنم؟
با سپاس فراوان از دوستان گرامي

Nima NT
یک شنبه 26 دی 1389, 15:38 عصر
میتونید از کامپوننت FlexCompress استفاده کنید ، میشه گفت بهترین در این زمینه هستش.

Felony
یک شنبه 26 دی 1389, 15:44 عصر
میتونید از کامپوننتهایی مثل VCLZip یا ... استفاده کنید یا اینکه خودتون توسط ریسورس ها پیادش کنید ، اگر خودتون میخواین پیادش کنید قبلا یک برنامه Setup ساز تو بخش برنامه های متن باز قرار داده بودم که میتونید از اون کمک بگیرید .

h_mohamadi
یک شنبه 26 دی 1389, 21:33 عصر
میتونید از کامپوننت FlexCompress استفاده کنید ، میشه گفت بهترین در این زمینه هستش.

با تشکر فراوان از پاسخ شما
يعني اين کامپوننت اين کاري را که من مي خواهم را انجام مي دهد و من با آن مي توانم چند فايل را در يک فايل exe قرار دهم و وقتي اين فايل را به کامپيوتر هاي ديگر بردم و اجرا کردم بگويم آنها را در تمپروري ويندوز اکسترک کرده و يک فايل را اجرا نمايد.درست مثل winrar ????

h_mohamadi
یک شنبه 26 دی 1389, 21:34 عصر
میتونید از کامپوننتهایی مثل VCLZip یا ... استفاده کنید یا اینکه خودتون توسط ریسورس ها پیادش کنید ، اگر خودتون میخواین پیادش کنید قبلا یک برنامه Setup ساز تو بخش برنامه های متن باز قرار داده بودم که میتونید از اون کمک بگیرید .

با سلام خدمت آقاي تاجيک
مي شود لينک تاپيک را بدهيد؟

Felony
یک شنبه 26 دی 1389, 21:48 عصر
با سلام خدمت آقاي تاجيک
مي شود لينک تاپيک را بدهيد؟

http://barnamenevis.org/showthread.php?207593-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1-%D9%85%D8%AA%D9%86-%D8%A8%D8%A7%D8%B2-Silver-Install-Maker

Nima NT
یک شنبه 26 دی 1389, 21:51 عصر
با تشکر فراوان از پاسخ شما
يعني اين کامپوننت اين کاري را که من مي خواهم را انجام مي دهد و من با آن مي توانم چند فايل را در يک فايل exe قرار دهم و وقتي اين فايل را به کامپيوتر هاي ديگر بردم و اجرا کردم بگويم آنها را در تمپروري ويندوز اکسترک کرده و يک فايل را اجرا نمايد.درست مثل winrar ????

بله خیلی راحت میتونید این کار رو انجام بدید ، قابلیتهایی مثل پسورد گذاری و رمزنگاری و ... رو هم داره که میتونید چندین نوع فایل رو در قالب یک فایل آرشیو کنید و بعدا" فقط با اسم اونها بهشون دسترسی داشته باشید. به راحتی میشه گفت بهترین کامپوننت در این زمینه هستش چون من به خاطر یکی از کارهام مدت ها دنبال این جور کامپوننت ها گشتم و تقریبا" اکثرشون رو امتحان کردم ولی هیچ کدوم به راحتی و قدرتمندی Flex نیست.

h_mohamadi
دوشنبه 27 دی 1389, 14:55 عصر
بله خیلی راحت میتونید این کار رو انجام بدید ، قابلیتهایی مثل پسورد گذاری و رمزنگاری و ... رو هم داره که میتونید چندین نوع فایل رو در قالب یک فایل آرشیو کنید و بعدا" فقط با اسم اونها بهشون دسترسی داشته باشید. به راحتی میشه گفت بهترین کامپوننت در این زمینه هستش چون من به خاطر یکی از کارهام مدت ها دنبال این جور کامپوننت ها گشتم و تقریبا" اکثرشون رو امتحان کردم ولی هیچ کدوم به راحتی و قدرتمندی Flex نیست.


ممنونم از اينکه من را راهنمايي نموده ايد.فقط در سمپل هايش نمونه اي براي اين کار ندارد.
آيا شما نونمه اي داريد که روش ساخت فايل EXE که شامل چند فايل است در آن باشد.

Nima NT
دوشنبه 27 دی 1389, 21:19 عصر
شما فایل Exe براش درست نمیکنید ، یک فایل آرشیو درست میکنید با هر پسوندی و یک فایل اجرایی هم خواهید داشت که اطلاعات رو از همون فایل آرشیو میخونه و برای شما در مکان مورد نظرخودتون ذخیره میکنه.

h_mohamadi
دوشنبه 27 دی 1389, 21:24 عصر
شما فایل Exe براش درست نمیکنید ، یک فایل آرشیو درست میکنید با هر پسوندی و یک فایل اجرایی هم خواهید داشت که اطلاعات رو از همون فایل آرشیو میخونه و برای شما در مکان مورد نظرخودتون ذخیره میکنه.

با تشکر
نمونه اي از ساخت فايل نداريد؟؟

Nima NT
دوشنبه 27 دی 1389, 21:59 عصر
اگر منظورتون ساخت فایل آرشیو هست میتونید از تابع زیر استفاده کنید.

procedure CompressFromFile(F1, F2: string);
var
Compresor: TFlexCompress;
MS: TMemoryStream;
begin
Compresor := TFlexCompress.Create(nil);
Compresor.CompressionAlgorithm := caPPM;
Compresor.CompressionLevel := clMax;
Compresor.CompressionMode := 9;
Compresor.Password := 'Password';
Compresor.CryptoAlgorithm := caRijndael_256;
Compresor.FileName := 'Archive.dll'; // Archive file name
Compresor.OpenArchive(fmCreate);
MS := TMemoryStream.Create;
MS.LoadFromFile('1.exe');
MS.SaveToFile('1.exe');
MS.Free;
Compresor.AddFiles('Target.exe');
end;