PDA

View Full Version : ذخيره فيلم در فايل exe



SUNMOON
شنبه 15 تیر 1387, 10:09 صبح
دلفي كاراي عزيز سلام.
من يه چند وقتي كه مشغول نوشتن يه پروژه مولتي مديا هستم كه توش از فيلم استفاده شده حالا براي جلوگيري از كپي شدن فيلم هاش چند راه رو برسي كردم.بجز استفاده از بانك اطلاعاتي يه روشي به ذهنم رسيد كه مي خوام ببينم خوبه يانه.و اون اينكه يه برنامه بنوسم كه فايل فيلم رو ريسورس كنه تو يه فيل exe بعدش برنامه اصلي با يه پسورد فايل رو از اون فيل exe بخونه.حالا دوستان به نظر شما اين روش كارايي داره يا نه؟

Delphi Coder
شنبه 15 تیر 1387, 12:20 عصر
دلفي كاراي عزيز سلام.
من يه چند وقتي كه مشغول نوشتن يه پروژه مولتي مديا هستم كه توش از فيلم استفاده شده حالا براي جلوگيري از كپي شدن فيلم هاش چند راه رو برسي كردم.بجز استفاده از بانك اطلاعاتي يه روشي به ذهنم رسيد كه مي خوام ببينم خوبه يانه.و اون اينكه يه برنامه بنوسم كه فايل فيلم رو ريسورس كنه تو يه فيل exe بعدش برنامه اصلي با يه پسورد فايل رو از اون فيل exe بخونه.حالا دوستان به نظر شما اين روش كارايي داره يا نه؟
حداقل Encrypt شدشو بذار تو ریسورس. ولی به هر حال اون کسی که پسورد رو داشته باشه حتی میتونه فیلم رو حین play از رو صفحه record کنه. نرم افزارهای زیادی برای این کار هست.

SUNMOON
شنبه 15 تیر 1387, 12:23 عصر
delphi coder جان چيزايي به فيلم اضافه مي كنيم كه اگه ريكورد كرد تابلو بشه از يه نرم افزار ديگه كش رفته مثلا يه واتر مارك تو كل صفحه فيلم.منتها سوال من اينه كه اين روش از بانك اطلاعاتي بهتره يا نه؟

SUNMOON
شنبه 15 تیر 1387, 19:09 عصر
من يه فايلexe درست كردم كه فيلمم رو بصورت res توش دارم حالا تو برنامه ي اصليم اين فايل اexe رو چطور بايد بيارم .بايد فايل exeام يه بخش پنهان براي دريافت پسورد داشته باشه ديگه ؟نه؟

Hsimple11
شنبه 15 تیر 1387, 19:42 عصر
در فراخوانی Resource خود اشکال دارید یا امنیت آن؟

SUNMOON
یک شنبه 16 تیر 1387, 08:48 صبح
چيزي رو كه كه مي خوام انجام بدم توضيح ميدم:
1.من يه برنامه به اسم A داروم كه يه برنامه آموزشي كه شامل چند تافرم
2.برنامه A بايد mتا فيلم رو پخش كنه
3.هر فيلم رو به صورت ريسورس تو يه فايلexe كه وقتي اونو اجرا ميكني فقط يه فرم خالي نمايش داده ميشه ذخيره كردم
4.حالا ميخوام يه بخشي تو برنامه A وجود داشته باشه كه با فراخواني يكي از اون exe ها فيلم داخلش رو پخش كنه
(در ضمن آيا راهي براي كد كردن فيلم داخل فايلexe وجود داره كه اگه كسي تونست اونو extract كنه بايد حتما پسورد داشته باشه تا بتونه بازش كنه)
ببخشيد كه چند تا سوال همزمان مطرح شد!

Hsimple11
یک شنبه 16 تیر 1387, 16:55 عصر
در مورد فراخوانی ریسورسها در همین سایت جستجو کنید.

SUNMOON
دوشنبه 17 تیر 1387, 08:27 صبح
در مورد فراخواني ريسورس از يه فايل exe چيزي پيدا نكردم

Touska
دوشنبه 17 تیر 1387, 10:40 صبح
کافی بود جستجو می کردید :

http://delphi.about.com/od/objectpascalide/a/embed_resources_2.htm

SUNMOON
دوشنبه 17 تیر 1387, 16:16 عصر
مصطفي جان اين جواب من نبود كه.من ميخوام از داخل بر نامم يه فايل رو از داخل يه فايل exe ي ديگه بخونم!

Mahyaa
دوشنبه 17 تیر 1387, 16:57 عصر
خوب کارت اصولا ، عجیبه .
مثلا هشت تا فیلم میخوای نمایش بدی اونوقت میخوای اونها رو جا بدی توی یک فایل Exe غیر از برنامه خودت ؟
اگر منطورت همینه ، به نظرم فکر خوبی نیست .

ریسورس رو معمولا برای استفاده توی همون فایل اجرایی ، استفاده میکنند . که (تا جایی که من میدونم) خیلی ایمن و دست نیافتنی هم نیستند . برای مخفی کردن یا محافظت از فایلها و منابع راهای بهتر هم هست .
مثلا میتونی با روش و الگوریتم دلخواه encrypt کنی.با یک اکتنشن دلخواه دخیره کنی و بخونیش . چه نیازی داری بذاریش توی یک فایل اجرایی ؟!

SUNMOON
سه شنبه 18 تیر 1387, 12:55 عصر
دوست عزيز ميتوني بيشتر توضيح بدي؟يعني فايلو بريزم توstream بعد كدش كنم.اگه همينه مثالي چيزي داري لطف كن همينجا بذار.

Mahyaa
سه شنبه 18 تیر 1387, 23:42 عصر
من کلا ایده اش رو گفتم . پیاده سازیش به خودتون بستگی داره .
مثلا میتونی از قبل فایلت رو بصورت Encrypt شده کنار فایل اجرایی (یا هر مسیر دیگه ای) قرار بدی . بعد در هنگام استفاده از اون فایل اون رو در داخل یک استریم ، Decrypt کنی و نمایشش بدی .

اگر با encryption زیاد آشنا نیستی یک سر به بخش امنیت نرم افزار (http://barnamenevis.org/forum/forumdisplay.php?f=66) (در همین سایت) بزن .
طبیعیه که هر چقدر بخواهی ایمن تر باشه ، باید وقت بیشتری رو روی روش Encryption بگذاری .

ولی اگر جیزی ساده و ابتدایی میخواهی که فقط بتونه فایلها رو از دسترس کاربران معمولی حفظ کنه ، روشهای رمز کردن که در اینترنت موجوده و منتشر شده ، کارت رو راه میندازه .

SUNMOON
چهارشنبه 19 تیر 1387, 11:33 صبح
اگه زحمتي نيست يه نمونه ي خوبش رو بزارين

Mahyaa
چهارشنبه 19 تیر 1387, 15:49 عصر
پیشنهاد میکنم خودتون توی گوگل سرچ کنید و نمونه های مختلف رو ببینید . یک نمونه بسیار ساده اینجا هست که یک کلید میگیره (به شکل عدد) و با استفاده از XOR ، رمز میکنه :
File Encrypt / Decrypt (http://delphi.about.com/od/humorandfun/a/fdacfileencrypt.htm)

pm_hamze
پنج شنبه 20 تیر 1387, 14:26 عصر
با سلام
دوستان اگه اجازه بدین دو تا راه رو هم من پیشنهاد کنم.
اول اینکه با برنامه مولتی مدیا بیلدر می تونی فیلمتو بزاری تو فایل exe و یه خوبی داره اینم اینکه یکی از اشیائ درون مولتی بیلدر مثل مدیا پلیره یعنی با برنامه های رکوردر نمی شه ازش فیلم گرفت و بعد از اون پس از ساخت فایل exe می تونی بیاریش تو برنامت ....یه راه دیگه اینکه فیلمتو بریز توی یه فایل res و وقتی کاربر کلیک می کنه رو play اول فیلم به روی سیستم در یه جای خاص باز میشه و از اونجا play میشه و بعد از اتمام فیلم هم با یه دستور کوچولو می گی که برو و فیلم رو از محل باز شده پاک کن....

pm_hamze
پنج شنبه 20 تیر 1387, 14:27 عصر
اگه هر کدوم رو خواستی با من تماس بگیر تا بهت بدم...

Felony
پنج شنبه 20 تیر 1387, 15:14 عصر
با سلام
دوستان اگه اجازه بدین دو تا راه رو هم من پیشنهاد کنم.
اول اینکه با برنامه مولتی مدیا بیلدر می تونی فیلمتو بزاری تو فایل exe و یه خوبی داره اینم اینکه یکی از اشیائ درون مولتی بیلدر مثل مدیا پلیره یعنی با برنامه های رکوردر نمی شه ازش فیلم گرفت و بعد از اون پس از ساخت فایل exe می تونی بیاریش تو برنامت ....یه راه دیگه اینکه فیلمتو بریز توی یه فایل res و وقتی کاربر کلیک می کنه رو play اول فیلم به روی سیستم در یه جای خاص باز میشه و از اونجا play میشه و بعد از اتمام فیلم هم با یه دستور کوچولو می گی که برو و فیلم رو از محل باز شده پاک کن....


دوست عزیز منظور شما استفاده از خاصیت Embedded در مالتی مدیا بیلدر هست ؟؟؟
به هیچ وجه این کار رو نکن به دلایل زیر :

ایشون میخواد فایلها از دسترس خارج باشند آقای pm_hamze با این کار بدتر فایلها میاد تو دسترس اگر کمی با MMB کار کرده باشید باید بدونید که فایل ها در فایل exe ذخیره میشوند ولی وقتی فایل exe رو اجرا کنید تمامی فایلها در پوشه ی temp ویندوز extract میشوند تا برنامه از اونها استفاده کنه تا زمانی که برنامه در حال اجرا باشد فایلها هم در پوشه ی temp هستند و به راحتی میشه آنها رو کپی کرد.

در ضمن نمیشه بیشتر از 50 مگابایت رو embedded کرد چون Memory کم میاره و برنامه دیگه اجرا نمیشه نه خودش اجرا میشه و نه سورسش باز میشه ...

یادش بخیر من برنامه نویسی رو با MMB شروع کردم عجب برنامه ی باحالی بود ...

SUNMOON
جمعه 21 تیر 1387, 09:05 صبح
با تشكر از دوستان روش res هم اگه كاربر يه end process بده به برنامه و با يه مقايسه گر فايلي ساده محل فايل رو ميتونه پيدا كنه.فعلا روش دوستمون mahyaa بهترين راه حله.(البته به نظر من!)