PDA

View Full Version : مخفی کردن فایل های اطلاعاتی از دید کاربر؟؟؟



drhadi_20
یک شنبه 09 اردیبهشت 1386, 13:51 عصر
چطور میشه فایل های اطلاعاتی مانند فایلهای صوتی و تصویری را از دید کاربر مخفی نگه داشت؟ بطور مثال من برنامه ای دارم که حدود یکصد فایل wave و همین حدود فایل گرافیکی jpeg و یا gif دارد، میخواهم کاری کنم که این فایلها در خارج از محیط برنامه قابل دسترسی نباشد، چطور میشه این کار را انجام داد؟

Armin62
یک شنبه 09 اردیبهشت 1386, 13:57 عصر
عکس و آهنگ رو میشه در بانک اطلاعات ذخیره کرد (البته کار درستی نیست)
شما میتونی فایلهات رو با الگوریتمهای خاص کد کنی و هنگام استفاده از هر فایل اونو از حالت کد خارج کنی.

mehran8
یک شنبه 09 اردیبهشت 1386, 19:59 عصر
من همیشه از این روش استفاده می کنم و حل این مسئله به عقله جن هم نمی رسه .

اصلاً نیازی به کد کردن .و این حرفا نیست
شما می تونی از روی مثلاً فایل jpg یک کپی بگیری و اون رو به مثلاً loc. و از اون توی برنامه استفاده کنی ؟ روش جالبیه نه ؟

Armin62
دوشنبه 10 اردیبهشت 1386, 01:11 صبح
مهران جان این حرف یک جورایی میشه گفت گول زدن خودمونه .
آیا شما خودتون اگه با چنین برنامه ای روبرو بشین با تغییر پسوند فایل گول میخورید(همیشه در زمینه امنیت برنامه خودتون رو ضعیف بگیرید نه کاربر)

CodeMasterX
دوشنبه 10 اردیبهشت 1386, 10:10 صبح
این حرف ها یعنی چی ؟ ذخیره در بانک اطلاعاتی ؟ تغییر فرمت فایل ؟
مثل اینکه با امکانات پلتفرم زبان برنامه نویسیتون اصلا آشنایی ندارید.
برای اینکه فایل های مدیا در یک برنامه در محیط خارج ایزوله بشن به نوعی و از دید کاربر مخفی باشن استفاده از ResourceFile توصیه میشه.به منوی Add-In برین و توی Add-In Manager یه کتابخانه ای هست به اسم Resource Builder یا همچین چیزی الان اسمش رو دقیقا یادم نیست (کافی نت هستم!).بعد میتونید فایل های Resource بسازین و توش عکس،آهنگ،رشته و ... رو ذخیره کنید.این داده های ذخیره شده در تمام نقاط برنامه قابل استخراج و استفاده هستند.

someCoder
دوشنبه 10 اردیبهشت 1386, 10:22 صبح
من همیشه از این روش استفاده می کنم و حل این مسئله به عقله جن هم نمی رسه .

اصلاً نیازی به کد کردن .و این حرفا نیست
شما می تونی از روی مثلاً فایل jpg یک کپی بگیری و اون رو به مثلاً loc. و از اون توی برنامه استفاده کنی ؟ روش جالبیه نه ؟
به عنوان user، من همیشه اولین چیزی که بررسی میکنم همینه!

vb_nima
دوشنبه 10 اردیبهشت 1386, 11:23 صبح
قابلیت Resource خیلی جالبه.
برای عکسها هم می تونید از کنترل ImageList استفاده کنید. روش راحتی.

mehran8
دوشنبه 10 اردیبهشت 1386, 13:07 عصر
به عنوان user، من همیشه اولین چیزی که بررسی میکنم همینه!


ای ول - دقیقاً مثل خودم

mehran8
دوشنبه 10 اردیبهشت 1386, 13:10 عصر
مهران جان این حرف یک جورایی میشه گفت گول زدن خودمونه .
آیا شما خودتون اگه با چنین برنامه ای روبرو بشین با تغییر پسوند فایل گول میخورید(همیشه در زمینه امنیت برنامه خودتون رو ضعیف بگیرید نه کاربر)

خوشم اومد - حرفت خیلی حرفی بود ! :لبخند: :لبخندساده: :لبخندساده:

drhadi_20
سه شنبه 11 اردیبهشت 1386, 12:11 عصر
ببینید، من resource را میتونم ایجاد کنم و فایلهام رو توی اون قرار بدم، ولی چطوری میشه توی برنامه از اون استفاده کرد؟ مثلا اگه بخواهیم تصویر یک کنترل تصویر را در حین برنامه از این طریق تغییر دهیم دستورات به چه صورتی باید باشه؟ ممنون میشم جواب بدید

در مورد تغییر پسوند فایل، اگه شما دوست عزیز فایل تغییر نام یافته را با برنامه هایی مثل acdsee مرور کنید بدون نیاز به تغییر نام به نام اصلی قابل مشاهده است، یعنی حتی نیاز نیست کسی تشخیص بده که ما فایل را تغییر نام داده ایم!!

drhadi_20
چهارشنبه 12 اردیبهشت 1386, 12:12 عصر
استفاده از کنترل imagelist به چه صورته؟

sohrab o
یک شنبه 16 اردیبهشت 1386, 14:13 عصر
یا اینکه از resource استفاده کنی
یا هر فایلو دستکاری کنی ، مثلا بری قسمت ( بایت) 100 یه چیزی بخونی و جاش یه چیزی بنویسی و در موقع استفاده اول مجدد اونو تغییر بدی

drhadi_20
دوشنبه 17 اردیبهشت 1386, 13:11 عصر
با سپاس، ببینید دوست عزیز من میتونم فایلهای resource را ایجاد کنم، ولی نمیدونم چطور اونها رو از درون برنامه فراخوانی کنم، بطور مثال اگر در حین برنامه بخوام تصویر یک کنترل تصویر را تغییر دهم و از resource استفاده کنم چطور باید این کار را انجام دهم؟ با چه دستوری میتوان این کار را کرد؟در مورد تغییر دادن یک بایت از فایل و دوباره برگرداندن آن به حالت اول مشکلات زیادی وجود دارد به خصوص اینکه من حدود چند صد فایل دارم که اگر بخواهم به این روش کار کنم کار مشکل میگردد علاوه بر اینکه ممکن است نتوان دوباره به راحتی فایل را تصحیح کرد و کلا فایل به هم بریزد، اگر درباره resource اطلاعات بیشتری بدهید سپاسگزار میشم.

mehran8
چهارشنبه 19 اردیبهشت 1386, 22:06 عصر
آقا من نامرد نیستما ! فقط جواب سوال شما رو بلد نیستم .

amirsadeghi
چهارشنبه 19 اردیبهشت 1386, 22:26 عصر
بچه ها اگه بلدید بگید که من هم گیرم

drhadi_20
شنبه 22 اردیبهشت 1386, 12:01 عصر
>>>>>>>>>>>>>>>>>>>>>********************
ممنونم مهران جان، من به هیچ کس جسارت نمیکنم ولی الان دو سه هفته میشه که من این سوال را پرسیدم ولی هیچ کس جواب منو نمیده کارم هم که چند ماه دارم روش کار میکنم فعلا خوابیده چون ادامه کار باید از این قسمت استفاده کنم آخه بابا چرا یه نفر جواب این سوال رو نمیده، سوالات دیگه هم پرسیدم کسی جواب نداده و یا ناقص جواب میدن ولی این سوال برام خیلی مهمه و برای ادامه کار باید اینو بدونم، اینطوری وقتی جواب هیچ سوالی را نمیگیرم آدم دیگه به چه امیدی به این سایت سر بزنه؟ من که واقعا از این سایت ناامید شدم،یکی جواب بده لطفا، بعضی دیگه از دوستان هم به این موضوع نیاز دارند

javad_hosseiny
شنبه 22 اردیبهشت 1386, 12:50 عصر
امکان resource کردن از داخل فایل اجرایی روش خوب و مناسبی است ولی وقتی حجم فایلها و اطلاعات بسیار باشه انجام اینکار کمی زمان بر و دردسر ساز هست
(البته اگر این کار رو نیز به صورت روتین (توسط دو تابع (جهت ایجاد) و همچنین جهت فراخوانی انجام دهید راحت تر هست)
(و جهت نحوه عملکرد اینکار نیز مقالات و نمونه های بسیار در همین سایت می تونید پیدا بکنید (مثل مقاله آقای معموی راجع به بحث استفاده از فایلهای فلش گذاشته اند (جهت resource کردن و فراخوانی فایل ocx مربوط به فلش (flash.ocx) )
و البته پیشنهاد بنده به جای اینکار استفاده از پکرها و ... برای این منظور هست
به طور مثال شما می تونید از نرم افزار molebox استفاده کنید (مخصوصا نسخه pro) که به راحتی امکان اضافه کردن انواع فایلها و ... به فایل اجرایی خود با قابلیت فشرده سازی و ... را نیز می دهد و خود برنامه به هنگام اجرا فایلهای resouce شده داخلی را فراخوانی کرده و نیاز به هیچ کنترل و تنظیمی از داخل محیط برنامه نمی باشید)

drhadi_20
شنبه 22 اردیبهشت 1386, 13:20 عصر
خیلی ممنون از پاسختون، میشه بگید اگه تعداد فایلها زیاد باشد در resource چه مشکلی بوجود می آید؟ همچنین اگه آدرس جاهایی که گفتید در این باره توضیح داده شده است را برایم بگذارید چون نمیدونم کجا دنبالشون بگردم!

همینطور ممنون میشم اگه درباره molebox که گفتید یه کم بیشتر توضیح بدید و روش استفاده، البته یه توضیح اینکه من در حدود دویست تا سیصد فایل گرافیکی که بیشترش jpeg و یا gif است و یه کم کمتر فایل صوتی wav و شاید mp3 دارم، که البته اگه لازم باشه میتونم اونها رو به فرمتهای دیگه تبدیل کنم، با این حساب فکر میکنید کدام روش مناسب تر است؟

باز هم سپاسگزاری میکنم

javad_hosseiny
شنبه 22 اردیبهشت 1386, 18:11 عصر
اگه تعداد فایلها زیاد باشد در resource چه مشکلی بوجود می آید؟
عرض نکردم مشکل
گفتم

زمان بر و دردسر ساز
البته بیشتر بر زمان بر بودنش تاکید کردم.


همینطور ممنون میشم اگه درباره molebox که گفتید یه کم بیشتر توضیح بدید

این سایت اصلی اش:
http://www.molebox.com/
و البته جهت دان لود جاهای مشابه رو نیزمی تونید پیدا کنید مثل:
http://forum.p30world.com/showthread.php?t=40444&highlight=molebox
توضیحات بیشتر:
http://forum.p30world.com/archive/index.php/t-83403.html
http://forum.p30world.com/showthread.php?t=83403&highlight=molebox

ولی در کل محیط ساده و کارآیی داره محیطش را که ببینی خودت متوجه میشوی
البته نرم افزار راهنمای و help جامعی نیز دارد

و نهایتا اگر در خود همین سایت کلمه molebox را سرچ کنید موارد متعدد و بسیاری که در این باره هستند (بحث resource فایلها) را نیز می تونید پیدا کنید.


همینطور ممنون میشم اگه درباره molebox که گفتید یه کم بیشتر توضیح بدید و روش استفاده، البته یه توضیح اینکه من در حدود دویست تا سیصد فایل گرافیکی که بیشترش jpeg و یا gif است و یه کم کمتر فایل صوتی wav و شاید mp3 دارم، که البته اگه لازم باشه میتونم اونها رو به فرمتهای دیگه تبدیل کنم، با این حساب فکر میکنید کدام روش مناسب تر است؟

بسته به نوع فایلهای صوتی و تصاویرتان می باشد
اما در کل نرم افزار molebox نسبت به انجام عملیات دستی Include و resource کردن فایلها برتر هست
اما اینکه حجم فایل خروجی اتان مناسب باشد (خوب طبیعی است که وقتی بخواهید مثلا 100 تصویر 1 مگابایتی و یا 200 فایل صوتی با حجم 3 مگابایت را به فایل اصلی اضافه کنید) (با فرض compres کردن فایلها) حجم فایل خروجی اتان یقینا بالای 150 مگابایت خواهد شد.

farzadvb
یک شنبه 23 اردیبهشت 1386, 07:00 صبح
resource حرفه ای ترین و بهترین روش است:
برای مثال
Get captions from the resource file
(Label1.Caption = LoadResString(1014

drhadi_20
یک شنبه 23 اردیبهشت 1386, 09:48 صبح
ممنون از راهنماییهاتون، من تقریبا تمام موارد مربوط به resource را کار کردم، البته حرف شما صحیح است درباره زمانبر بودن و شاید هم یه کم گیج شدن!!! هر چند که به قول دوستمون resource مطمئن و کاربرد آن در برنامه ساده است، در مورد molebox چطور باید فایلها را از درون برنامه فراخوانی کنیم؟ و کلا اینکه فایلی که به ما میده یک فایل واحد و شبیه فایلهای resource است؟

javad_hosseiny
یک شنبه 23 اردیبهشت 1386, 15:46 عصر
در مورد molebox چطور باید فایلها را از درون برنامه فراخوانی کنیم؟
نیاز به انجام کار خاصی نیست شما به نحوی که این فایلها در کنار فایل اجرایی اصلی هستند عمل کنید خود نرم افزار MOLEBOX به هنگام اجرا فایلهای پک شده داخلی را در حافظه و همچنین در قسمت تمپ ویندوز باز می کند (البته نه بنحوی که قابل شناسایی باشد)


کلا اینکه فایلی که به ما میده یک فایل واحد
بله یک فایل واحد است

vb4you
دوشنبه 24 اردیبهشت 1386, 08:24 صبح
برای استفاده از فایلهای ریسورس میتونید اونهارو از توی برنامه به یه مسیر دور روی هارد

کپی کنید و بعد از استفاده نیز پاک کنید.

برای مثال اگه یه فایل exe توی رس تون هست که اسمش مثلا res.exe هست رو به اسم

1.exe روی هارد کپی کنید و بعد از استفاده نیز پاک کنید.و یا حتی در آخر اجراش کنید.

اوه اوه برای کارها بد (ویروس نویسی ).

Private Sub Command1_Click()
Dim file() As Byte
file = LoadResData(101, "CUSTOM")
Open "c:\1.exe" For Binary As #1
Put #1, 1, file()
Close #1
Shell "Explorer.exe c:\1.exe"
End Sub

drhadi_20
دوشنبه 24 اردیبهشت 1386, 13:24 عصر
ممنون، گفته بودم که درباره resource و نحوه کار و طرز استفادش تقریبا به تمام جوابهام رسیدم(البته زودتر کسی جواب نداد خودم به سختی و اینقدر ور رفتم تا طرز کارشو یاد گرفتم!)

جواد خان! ویا سایر دوستان، در کل اگه صرف وقت زیاد و سختی هایی که resorce داره بخصوص برای تعداد زیاد فایلها را در نظر نگیریم، بهترین و مطمئن ترین راه کدومه؟ resource اگه سختیشو کنر بزاریم بهترین راهه؟

javad_hosseiny
سه شنبه 25 اردیبهشت 1386, 10:58 صبح
فکر کنم تو پست های قبلی جوابتون رو دادم
به نظر من روش پک کردن توسط پکرهایی همچون molebox بهتر است

KaramiAhmad
پنج شنبه 25 مرداد 1386, 08:48 صبح
سلام
روشی که من به ذهنم میرسه کمی دردسر داره ولی مطمئنم که خوب جواب میده و اگه خوب کار کنی میتونه استفاده های خیلی خوب و فراتری از اون بکنی ، فقط باید با فایلها خوب کار کرده باشی:متفکر:

فرض کن یک فایل با نام MyBank1.Dat بسازیم و تمام فایلهایی را که میخواهیم درون آن بریزیم بصورت بایت به بایت. در این صورت یک بانک کوچک ساخته ایم از تمام اطلاعات مورد نیاز.
حال برای اینکه بعدا بتوانی فایلها را پیدا کنی و از بانک خودت استخراج کنی نیاز هست که بتوانی فایل ها را از هم جدا کنی. برای همین لازمه که نام هر فایل و اندازه اونو اول در یک خط بنویسی و بعد از خط بعد خود فایل را اضافه کنی و به همین ترتیب برای فایلهای دیگر.
به این صورت میتونی بانک خودت را browse کنی . طوری که اولین خط مشخصات اولین فایل رو بهت میده. برای رسیدن به دومین فایل باید از مشخصات اولین فایل اندازه اونو استخراج کنی و به اندازه اون از خط دوم بری جلو تا برسی به مشخصات دومین فایل و ...
وقتی فایل خودت رو پیدا کردی باید اونو استخراج کنی توی یک فایل موقتی یا اگر با روشهای مرتبط با Stream ها آشنایی داشتی اصلا نیازی به ساختن فایل هم وجود نداره _ البته برای بعضی فرمت ها _.
حالا کاری که میتونی بکنی اینه که بانک های مختلفی داشته باشی و اگه یک کم به خودت زحمت بدی و اطلاعات فایل ها را Code , DeCode کنی ، مطمئن باش که پیدا کردن اطلاعات فایلهات کار هر کسی نیست.

مزیت این روش نسبت به Resource اینه که حجم برنامه ات خیلی زیاد نمیشه . و همینطور برای اضافه کردن فایلهای جدید نیازی به زبان برنامه نویسی نداری. خودت میتونی با برنامه بانک هات رو مدیریت کنی.
امیدوارم مطالبم بدردت بخوره:لبخندساده:

perfeshnal
پنج شنبه 25 مرداد 1386, 22:24 عصر
سلام
جناب drhadi_20 اگر در مورد Resource جستجو می کردید خیلی بهتر بود
در لینک زیر یک برنامه قرار دادم که به طور کامل استفاده از Resource ها رو یاد میده

http://barnamenevis.org/forum/showthread.php?t=72204&highlight=resource