PDA

View Full Version : كار با winrar در دلفي



veyron
چهارشنبه 08 مهر 1388, 21:56 عصر
سلام
من تازه واردم :خجالت:
چطوري ميشه يك فايل rar پسورد دار رو با برنامه باز كنم
يه چند تا فايل همراه برنامه دارم ميخوام كسي استفاده نكنه
خيلي ممنون

جواد ملاولی
جمعه 10 مهر 1388, 12:26 عصر
يه چند تا فايل همراه برنامه دارم ميخوام كسي استفاده نكنه
سلام. روشهای مختلفی برای این کار وجود داره. در سایت هم چند بار مطرح شده. به عنوان نمونه تاپیک زیر رو ببینید:
http://barnamenevis.org/forum/showthread.php?t=173642

تاپیک های دیگه هم هست که باید در سایت جستجو کنید.

merced
جمعه 10 مهر 1388, 15:25 عصر
اگه مي خواي از فشرده سازي استفاده كني فايل rar.exe‌ و unrar.exe موجود در پوشه winrar رو يه نيگاه بنداز
با استفاده اين دو فايل و command line مي تونيد همه كارهايي كه با WINRAR قابل انجامه رو انجام بديد.
مثلاً

rar <command> -<switch 1> -<switch N> <archive> <files...>
<@listfiles...> <path_to_extract\>

كافيه اين دو فايل رو با برنامه ات توزيع كني و همچنين در برنامه با دستوري مثل ShellExecute از اون استفاده كني.

ولي راه ديگه اينه كه از كامپوننت هاي مثل FlexCompress ويا ZipForg استفاده كنين . (فكر نمي كنم براي rar جواب بده :متفکر: بايد با zip كار كني‌)

البته اگه فقط منظورت از فشرده سازي رمز كردن فايله بحث فرق مي كنه

veyron
جمعه 10 مهر 1388, 19:01 عصر
اگه مي خواي از فشرده سازي استفاده كني فايل rar.exe‌ و unrar.exe موجود در پوشه winrar رو يه نيگاه بنداز
با استفاده اين دو فايل و command line مي تونيد همه كارهايي كه با WINRAR قابل انجامه رو انجام بديد.
مثلاً

rar <command> -<switch 1> -<switch N> <archive> <files...>
<@listfiles...> <path_to_extract\>كافيه اين دو فايل رو با برنامه ات توزيع كني و همچنين در برنامه با دستوري مثل ShellExecute از اون استفاده كني.

ولي راه ديگه اينه كه از كامپوننت هاي مثل FlexCompress ويا ZipForg استفاده كنين . (فكر نمي كنم براي rar جواب بده :متفکر: بايد با zip كار كني‌)

البته اگه فقط منظورت از فشرده سازي رمز كردن فايله بحث فرق مي كنه

سلام دوست عزيز
هدف فشرده سازي نيست
من ميخوام يه سري اطلاعات رو كد كنم كه كسي نتونه استفاده كنه
دوست عزيزي در پست دوم پيشنهاد دادن كه خودم اطلاعات رو كد كنم
ولي فكر كنم اون روش خيلي مشكل تر اين اين كار باشه

من يه سري فايل رو فشرده كردم و روش پسورد گزاشتم كه نيازي به كد گزاري و ديكد كردن فايل ها توسط برنامه نباشه
حالا ميخوام اين فايل ها رو توسط برنامه تو يه فولدر مثلا پوشه ويندوز از حالت فشرده خارج كنم و بعد از استفاده پاكشون كنم چون نيازي بهشون نيست و فقط يك بار استفاده ميشن

كار با ShellExecute رو بلدم و ولي از command line وين رار سر در نميارم نميدونم پسورد رو كجا بايد بدم
help وين رار رو هم نگاه كردم ولي در command line جايي در مورد پسورد نديدم
خيلي ممنون ميشم يه مثال در مورد دستور unzip فايل پسورد دار بنويسيد

ghasemshami
جمعه 10 مهر 1388, 19:25 عصر
از کامپوننت های موجود استفاده کن مثل VclZip

veyron
جمعه 10 مهر 1388, 21:27 عصر
از کامپوننت های موجود استفاده کن مثل VclZip
اين يكي مثل اينكه پوليه!
نصب كردم سه تا دستور نوشتم، ادرس فايل و پسورد و ان زيپ
ولي عمل نميكنه
چه دستوري بايد بنويسم؟

ZipTV هم نصب كرددم ولي موقع كامپايل ميگه فايل ztvRegister.dcu موجود نيست:ناراحت:

Felony
جمعه 10 مهر 1388, 22:04 عصر
با همون 2 تا فایل Rar و UnRar و با راه حلی که merced ارائه داد میشه ، کافیه به Help برنامه Winrar و قسمت CommandLine مراجعه کنید و دنبال سوئیچ مورد نظرتون بگردید .

veyron
جمعه 10 مهر 1388, 22:37 عصر
با همون 2 تا فایل Rar و UnRar و با راه حلی که merced ارائه داد میشه ، کافیه به Help برنامه Winrar و قسمت CommandLine مراجعه کنید و دنبال سوئیچ مورد نظرتون بگردید .
من داشتم تو قسمت CommandLine دنبالش ميگشتم!
الان يه چيزي يافتم



Switch -P[pwd] - set passwordSwitch -P[pwd] - set password
Set a password <pwd>to encrypt files during archiving or to decrypt during extracting. The password is case-sensitive. If you omit the password in the command line, you will be prompted to enter it.
In the shell mode a password may be entered through Enter default password dialog or in the Archive name and parameters dialog.
Example

add the contents of the folder "games" to the archive " secret", using the password ZaBaToAd
WinRAR a -pZaBaToAd -r secret games\*.*
Notes



if you wish to achieve real security do not use a password shorter than 8 characters or one which is easy to guess;
do not forget your passwords or your data will be completely lost.


من اين دستور رو تو ران زدم اجرا شد

\c:\WinRAR.exe x 01 file.txt folder


الان 2 تا مشكا دارم
يكي اينكه وقتي اين دستور رو با سويچ بالا قاطي كردم ديگه عمل نميكنه

دوم اينكه اين دستور رو تو دلفي اجرا نميكنه
اين دستوري كه نوشتم

(ShellExecute(Application.Handle,'Extract files...','winrar.exe','x 01 file.txt','',SW_SHOW

ولي عمل نميكنه
اين همه پارامتر ها رو چطوري بايد بهش بدم؟

جواد ملاولی
شنبه 11 مهر 1388, 22:25 عصر
من يه سري فايل رو فشرده كردم و روش پسورد گزاشتم كه نيازي به كد گزاري و ديكد كردن فايل ها توسط برنامه نباشه
این که به راحتی قابل کشفه؟!

veyron
یک شنبه 12 مهر 1388, 00:06 صبح
این که به راحتی قابل کشفه؟!
متوجه منظورتون نشدم
فكر نكنم كسي وقت بزار بياد پسورد وين رار رو بشكنه

FiACKER
یک شنبه 12 مهر 1388, 00:51 صبح
چرا الگوريتم هايي كه وجود دارن استفاده نمي كنيد.
كي مي دونه كه شما از چه الگوريتمي استفاده كرديد.
تازه مي علاوه بر اينكه ميتونيد الگوريتم ها رو هم به دلخواه تغيير بديد ، كنترل بيشتري رويه فايلها تون دارد.
شما به هر حال فايل ها رو Extract مي كنيد و هر كاربري مي تونه با مانيتور كردن فايلها توسط برنامه هاي مخصوص اين كار فايلهاي شما رو كشف كنه.
در حالي كه مي تونيد بعد از ديكد كردن فايلتون با الگوريتم هاي خودتون فايل رو به صورا استريم هر جا كه بخوايد استفاد كنيد.