جلوگيري از باز شدن يك فايل اگزه

شروع موضوع توسط sarbedaronline1 ‏20 ژانویه 2010 در انجمن برنامه Multimedia Builder

کلمات کلیدی:
  1. sarbedaronline1

    sarbedaronline1 Member

    ارسال‌ها:
    160
    تشکر شده:
    78
    امتیاز دستاورد:
    16
    سلام.
    مساله يه جورايي تكراريه اما با ديدن نرم افزارهاي آموزشي بدجوري يه سري مشكلات آدمو قلقلك ميده حقيقتش آموزش نرم افزار حسابداري هلو رو ديدم دست يكي از بچه ها و داخلش كه جستجو كردم ديدم يه سري فايل اگزه ساخته شده با فلش هست كه توسط يه فايل اگزه مركزي رهبري ميشن يعني فايل اصلي روباز و بقيه فايلها به داخل آن فراخواني ميشن.
    از روزي كه با بيلدر كار ميكنم اين مشكل واسم بي جواب مونده كه آيا راهي هست كه فايلهاي اگزه كه داخل يك پروژه هستش و از داخل يه فايل اگزه اصلي فراخوني ميشه رو فقط بشه از داخل برنامه فراخواني كرد و كاربر نتونه باورود به پوشه ها فايلهارو يكي يكي باز كنه.
    البته بازحمتهايي كه برحي از شما بچه هاي فعال كشيديد به راههايي رسيدم ولي بازم راضي نشدم .
    مثلا استفاده از send exe يا تبدل فايلهاي اگزه به mbd يا استفاده از سورس لاير ها .
    ولي جواب اين نيست اگه مثلا مثل همين آموزش نرم افزار هلو فايلهاي اگزه زياد باشن.
    من به بعضي از بچه ها ايمان دارم چون كاراشو نو ديدم مثل آقاي بهشت و سيلور سافت و نور كام و...
    سوال اينه كه آيا نميشه مثلا بين بيلدر و نرم افزارهايي مثل exe password با پلاگين هاي بيلدر رابطي تعريف كرد كه فايلهاي اگزه پسورد گذاري بشه و از درون بيلدر فقط فراخواني بشه؟
    ممنون.
     
    نوشته شده توسط sarbedaronline1 در ‏20 ژانویه 2010
  2. BEHESHT

    BEHESHT Member

    ارسال‌ها:
    747
    تشکر شده:
    1,384
    امتیاز دستاورد:
    16
    سلام

    من چيزي بلد نيستم اگر هم اطلاعاتي هست همه مديون افرادي مثل Silvercover و nevercom و naseronline و .... خيلي از بچه هاي ديگه هستم

    پس رو حساب شاگردي به همه اين دوستان عرض مي كنم ادعايي نيست:

    اگه حجم فايل هات كمتر از 70 مگابايت هستش با MoleBox به همراه فايل exe اصلي پك كن چون راه بساير بي دردسر و تاحدي مطمئن هستش:wink:

    موفق باشي:rose:
     
    نوشته شده توسط BEHESHT در ‏21 ژانویه 2010
    sarbedaronline1 و evil_gates از این پست تشکر کرده اند.
  3. nevercom

    nevercom کاربر متخصص انجمن مولتی مدیا بیلدر

    ارسال‌ها:
    2,906
    تشکر شده:
    6,921
    امتیاز دستاورد:
    113
    اگردرست متوجه منظورتون شده باشم، شما میتونید برتامه تون رو به نحوی تنظیم کنید که تنها وقتی با یک پارامتر صحیح راه اندازی شد، شروع به کار کنه و در غیر اینصورت بسته بشه
    برای اینکار شما میتونید از Command-Line استفاده کنید، یک پارامتر مشخص رو برای برنامتون تعیین کنید و در اسکریپت مربوطه مشخص کنید که اگر پارامتر ارسالی با پارامتر مشخص شده یکی نبود برنامه بسته بشه،
    در برنامه ی اصلی هم هنگام اجرای فایل اجرایی، پارامتر صحیح رو به برنامه ارسال کنید تا برنامه اجرا بشه.
    برای توضیحات بیشتر در انجمن عبارت Command-Line و CBK_CMDLine رو جستجو بفرمایید.
     
    نوشته شده توسط nevercom در ‏21 ژانویه 2010
    sarbedaronline1، evil_gates، Saman و یک نفر دیگر از این ارسال تشکر کرده اند.
  4. sarbedaronline1

    sarbedaronline1 Member

    ارسال‌ها:
    160
    تشکر شده:
    78
    امتیاز دستاورد:
    16
    اين اولين باريه كه يه راه جديد پيشنهاد ميشه ميخوام هرچي دستوره برام بنويسي كه واقعا ممنون ميشم جستجو كردم اما نتونستم تجزيه كنم ايني رو كه گفتي.
    آيا بايد در پيج استارت هر فايل اگزه دستور خاصي رو وارد كنم و همينطور در فايل اگزه اصلي اگه ممكنه دستور رو برام بذار ميدونم سرت شلوغه ولي واقعا ممنون ميشم اگه اين كارو بكني.
     
    نوشته شده توسط sarbedaronline1 در ‏21 ژانویه 2010
  5. Silver Soft

    Silver Soft کاربر متخصص مولتی مدیا بیلدر

    ارسال‌ها:
    644
    تشکر شده:
    1,180
    امتیاز دستاورد:
    16
    کد زیر رو درون اسکیپت صفحه اول پروژتون قرار بدید :
    کد (Text):
    Pass$=CmdLineParam$[1]
    If (Pass$<>'123') Then
      Exit()
    End
    حالا فایل پروژتون رو به صورت exe در بیارید ، از این به بعد برای اجرای پروژه باید کد ( که در اینجا 123 هست ) رو به فایل اجرایی بفرستید وگرنه فایلتون اجرا نمیشه ، برای اجرا درون Run اینطور بنویسید :
    کد (Text):
    "D:\Test.exe" 123
    اگر هم بخواین فایل اجرایی برنامتون رو با یک برنامه دیگه صدا بزنید باید کد رو به صورت پارامتر براش ارسال کنید .
     
    نوشته شده توسط Silver Soft در ‏22 ژانویه 2010
    sarbedaronline1، BEHESHT، evil_gates و یک نفر دیگر از این ارسال تشکر کرده اند.
  6. sarbedaronline1

    sarbedaronline1 Member

    ارسال‌ها:
    160
    تشکر شده:
    78
    امتیاز دستاورد:
    16
    واقعا ممنون. با اينكه قبلا هم چنين سوالي رو هم خودم و هم ديگران داشته بودن اين راه كار تازه اي بود البته بجز پيشنهاد مول باكس از طرف بهشت عزيز كه از ايشونم واقعا ممنونم .
    راستش علت اين سوال صرفا امنيت پروژه نبود و در واقع اجراي مناسب و درست پروژه ها از طرف كاربران عادي بود.
    حالا با توجه به مثالي با نام M30 كه استاد سيلور كاور براي يكي از بچه ها درست كردن البته اين مثالو با جستجويي كه براي دستورات كامند كردم پيدا كردم اين مثال هم تقريبا به اين صورت بود كه دو فايل از طريق كامند لاين باهم ارتباط برقرار ميكردن.
    بحثي كه در اون مثال و جاهاي ديگه ديدم پايين بودن امنيت كامند لاين بود البته نه از نظر من چون من واقعا تازه در حال يادگيري هستم. اما آيا وقتي چنين ايده هايي هست آيا ممكنه كه از طيق يك پلاگين خاص اين كار صورت بگيره تا امنيت هم بالاتر بره مثلا مثل پلاگين type of drive كه واقعا در بسياري جاها كارسازه.
    سوال دومم اينه كه آيا ممكنه براي پروژه اي كه از طريق كامند لاين به پروژه ديگه پرامتر ارسال ميكنه در جايي مثلا كامپيوتر ديگه يا نسخه ديگه اي از ويندوز مشكلي پيش بياد؟
    بازم از كمك و راهنماييتون ممنون.
     
    نوشته شده توسط sarbedaronline1 در ‏24 ژانویه 2010
  7. evil_gates

    evil_gates اين نيز بگذرد ...

    ارسال‌ها:
    1,833
    تشکر شده:
    3,724
    امتیاز دستاورد:
    113
    ساير سيستم عامل ها رو نميدونم اما تو مدتي كه من با xp و 7 كار كردم نه به مشكلي برخورد نكردم. و به طور طبيعي هم احتمال اينكه مشكلي بوجود بياد كمه .
     
    نوشته شده توسط evil_gates در ‏25 ژانویه 2010
    sarbedaronline1 از این پست تشکر کرده است.
  8. Silver Soft

    Silver Soft کاربر متخصص مولتی مدیا بیلدر

    ارسال‌ها:
    644
    تشکر شده:
    1,180
    امتیاز دستاورد:
    16
    خیر مشکلی نداره ، هر سیستم عاملی که به درستی بتونه فایل exe شما رو اجرا کنه دیگه در مورد روابط Command Line مشکلی نداره .
     
    نوشته شده توسط Silver Soft در ‏25 ژانویه 2010
    sarbedaronline1 از این پست تشکر کرده است.
  9. sarbedaronline1

    sarbedaronline1 Member

    ارسال‌ها:
    160
    تشکر شده:
    78
    امتیاز دستاورد:
    16
    از راهنماييهاتون ممنون.
    حقيقتش يه فكر ديگه هم به ذهن ناقصم خطور كرد اونم اينه كه آيا موقع باز شدن يك فايل اگزه ميشه چك كنه كه اگه فايل اصلي تو ليست پروسه ها بود فايل زير مجموعه باز بشه و اگه فايل اصلي باز نشده بود و در پروسه هاي ويندوز نبود از باز شدن فايل زير مجمو عه جلوگيري بشه؟ در واقع اينكاري رو كه از طريق كامندلاين كرديد از طريق چك كردن پروسه ها بشه انجام داد؟
    آيا ممكنه كه اين راه بهتر و با امنيت تر باشه؟
     
    نوشته شده توسط sarbedaronline1 در ‏25 ژانویه 2010
  10. Silver Soft

    Silver Soft کاربر متخصص مولتی مدیا بیلدر

    ارسال‌ها:
    644
    تشکر شده:
    1,180
    امتیاز دستاورد:
    16
    بله میشه ولی این کار در کل در بیلدر فایده ای نداره ، کارش یه Memory Dumper هست که سورس رو در بیاری و یه حالی بهش بدی !

    ولی اگر از IDE برنامه نویسی مثل دلفی استفاده میکردی ، باید بهت میگفتم این کار امنیت رو پایین هم میاره ، چون کاربر میتونه یه برنامه رو یه Rename بزنه و به اسم اون پروسه اجراش کنه و بعد برنامه شمارو دور بزنه ، ولی همون CommandLine چون در دلفی نمیشه سورس رو دراورد امنیتش بیشتره چون کسی نمیتونه پیدا کنه که برنامه با چه پارامتری اجرا میشه .

    موفق باشید.
     
    نوشته شده توسط Silver Soft در ‏25 ژانویه 2010
    Komeyl_1110، evil_gates، nevercom و یک نفر دیگر از این ارسال تشکر کرده اند.
  11. evil_gates

    evil_gates اين نيز بگذرد ...

    ارسال‌ها:
    1,833
    تشکر شده:
    3,724
    امتیاز دستاورد:
    113
    منم با نظر جناب Silver Soft موافقم اما اگه قصد داريد با mmb اين كار رو انجام بديد من يه مثال با پلاگين MicrobeProcesses براتون تو اين مبحث درست كرده بودم. ميتونيد با يكم تغييرات كاري كه مد نظرتون هست رو انجام بديد

    http://forum.majidonline.com/showthread.php?t=136914&page=2
     
    آخرین ویرایش: ‏26 ژانویه 2010
    نوشته شده توسط evil_gates در ‏26 ژانویه 2010
    Komeyl_1110 و sarbedaronline1 از این پست تشکر کرده اند.
  12. sarbedaronline1

    sarbedaronline1 Member

    ارسال‌ها:
    160
    تشکر شده:
    78
    امتیاز دستاورد:
    16
    sarbedaronline

    من هركاري كردم كه موقع اجراي فايل زير مجموعه كه ران ميشه پارامتر wait رو هم به دنبال كد 123 بنويسم اما نشد.
    مثالي كه ساختي واسم، حرف نداشت.
    فقط يه مشكل دارم اونم اينه كه ميخوام پنجره اول به حالت wait بره ولي خودم نتوستم درستش كنم اگه حلش كني ممنون ميشم
    بازم ممنون ميشم اگه كسي حلش كنه.
     
    آخرین ویرایش: ‏31 ژانویه 2010
    نوشته شده توسط sarbedaronline1 در ‏30 ژانویه 2010

به اشتراک بگذارید