تور لحظه آخری
امروز : شنبه ، 19 آبان 1403    احادیث و روایات:  امام علی (ع):زكات دانش، آموزش به كسانى كه شايسته آن‏اند و كوشش در عمل به آن است.
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

قیمت پنجره دوجداره

بازسازی ساختمان

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

اوزمپیک چیست

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

نگهداری از سالمند شبانه روزی در منزل

بی متال زیمنس

ساختمان پزشکان

ویزای چک

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

 






آمار وبسایت

 تعداد کل بازدیدها : 1827711007




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

سوال: کمی پیچیده در رابطه با شل و اجرا کردن application


واضح آرشیو وب فارسی:سایت ریسک: MichaelQwerty04-01-2009, 07:07 PMسلام میدونید که با استفاده از دستور شل میشه یه فایل اجرایی را از مسیر خاصی اجرا کرد حالا فرض کنید شما با دستور شل برنامه regedit.exe یا هر برنامه دیگری را باز کردید Shell “regedit.exe” حالا وقتی که برنامه ای که در آن دستور شل را استفاده کردید با استفاده از task manager به صورت End process tree ببندید همراهش regedit یا فایل اجرایی بسته می شه من این کار را با Api(ShellExecute) نیز آزمایش کردم که همین اتفاق افتاد کسی هست که بدونه چطور میشه جلوی این کار را گرفت یا کدی هست که باعث بشه برنامه ای که توسط shell باز شده یعنی فایل اجرایی زیر مجموعه نشود مطابق شکل: http://i43.tinypic.com/2wmjjlw.jpg بهرام_6204-01-2009, 07:58 PMیک کلک رشتی از خودم در کردم:27:: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! ببین به دردت می خوره:21: قاهر - Gahir04-01-2009, 08:04 PMدوستش این لینک تصویر شما فیل تر شده Fil-ter تو یه جایی دیگه Uploadاش کن . MichaelQwerty04-01-2009, 08:56 PMعکس چیز زیادی نشون نمیده فقط نشون میده که برنامه زیر مجموعه شده بهرام_62کارت خیلی درسته ممنون میشه یه توضیح مختصر دررابطه با کدهاش بدی کسی راه دیگه ای به نظرش نمیرسه فکر نکنم راه دیگه ای باشه *Batman*04-01-2009, 09:25 PMطبق معمول من VB 6 ندارم و نتونستم روش بهرام رو ببینم. میتونی CreateProcess را هم امتحان کنی. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! قاهر - Gahir04-01-2009, 10:01 PMبهرام_62 کار شاقی کردی مگه ... ولی بدک نبود ... بهرام_6205-01-2009, 01:12 AMبهرام_62کارت خیلی درسته ممنون میشه یه توضیح مختصر دررابطه با کدهاش بدی خواهش می کنم کار پیچیده ای نیست من با دستور شل explorer.exe رو فراخوانی می کنم و با استفاده از explorer برنامه رو فراخوانی می کنم اون sendkeys ها هم مشخصه فکر کنم برای چیه برای اینکه بفهمی اونا مال چیه فقط کافیه اونا رو پاک کنی و برنامه رو اجرا کنی کار شاقی کردی مگه ... ولی بدک نبود ... حق با تویه کار شاقی نیست گفتم کلک رشتیهhttp://forum.p30world.com/images/New-smile/N_aggressive%20(33).gif MichaelQwerty05-01-2009, 08:59 AMولی یه مشکل داره قبل از این که برنامه regedit اجرا بشه دو تا کادر سریع باز می شه که یکیشون خود کادر دانلود همون کادریی که در زمان دانلو د باز می شه Payman_6205-01-2009, 02:02 PMسلام. بهرام ممنون ازت. فکر جالبی بود. اینم یه روش دیگه. بهرام_6205-01-2009, 03:23 PMاینم یه روش دیگه. سلام آقا یکم حرفه ایه من نفهمیدم چه کار کردیhttp://qsmile.com/qsimages/39.gif میشه یک توضیح بدی؟ Payman_6205-01-2009, 04:27 PMسلام. وقتی یه پروسه end process tree بشه همه برنامه هایی که قبلا باز کرده بوده هم همراهش بسته میشن. این قضیه در مورد cmd هم صادقه. حالا اگه قبل از end process tree شدن اون برنامه اول خودش به یه صورت دیگه بسته شه دیگه برنامه هایی که باز کرده بود بسته نمیشن. من تو این برنامه اومدم یه پروژه ساختم که هر کامندی بهش بدی به عنوان آدرس فایل اجرایی میگیره و به عنوان پارامتر برای ای پی ای ShellExecute در نظر میگیره. این پروژه رو کامپایل کردم و به صورت ریسورس قرار دادم تو پروژه main که آدرس فایل رو از ما میگیره. وقتی شما رو run کلیک میکنی اون فایلی که ریسورس شده بود اکسترکت میشه کنار برنامه. به همراه متن تکس باکس که به عنوان کامند براش ارسال میشه اجرا میشه. فایل ریسورس بعد از اجرا کار خودش رو که اجرای کامندی که براش ارسال شده هست رو انجام میده و بلافاصله بسته میشه تا end process tree نشه. چون رجیستری رو برنامه داخل ریسورسمون اجرا کرده نه برنامه اصلیمون که مشاهده میکنیم با end process tree شدن برنامه ما رجیستری بسته نمیشه. برنامه ریسورس هم که رجیستری رو اجرا کرده بود خودش بسته میشه تا کسی نتونه end process tree بکنتش. بهرام_6206-01-2009, 01:59 AMOh My God خیلی معرکه بود ایولhttp://qsmile.com/qsimages/39.gif MichaelQwerty14-01-2009, 06:51 AMسلام آقا پیمان ظاهرا این راه از همه بهتره من چیز زیادی در باره برنامه نویسی نمی دونم این پروژه رو کامپایل کردم و به صورت ریسورس قرار دادم تو پروژه main که آدرس فایل رو از ما میگیره یه آیکون سبز در پروژه هست که در قسمت project explorer قرار داره منظورتون همینه این که پسوندش res هست چه کاری انجام میده در چه مواردی استفاده میشه چطور میشه ساختش منظورتون چیه که گفتین من این پروژه رو کامپایل کردم مگه کامپایل کردن همون ّF5 نیست میبینید که وضع من زیاد خرابه لطفا جواب منو کامل بدید سپاسگزار میشم آقا پیمان MichaelQwerty18-01-2009, 06:01 AMآقا پیمان جواب مارو نمی خوای بدی Payman_6218-01-2009, 12:52 PMسلام. بله ریسورس همون آیکون سبزه هست. برای استفاده از ریسورس باید ریسورس ادیتور رو فعال کنید. از منوی add in گزینه add in manager رو بزن و vb 6 resource editor تیک load unload و load on startupش رو بزن. یه آیکون سبز بالای صفحه زیر منوهات اضافه میشه که میتونی باهاش کار کنی. کار ریسورس اینه که میتونی هر فایلی با هر پسوندی دلت بخواد بذاری تو دل پروژت. بعدا هنگام ران شدن پروژه میتونی اکسترکتش کنی رو هارد و ازش استفاده کنی. من این جا پروژه اولی رو گذاشتم تو دل پروژه دومی و هنگام دستور اجرای فایل اونو اکسترکت کردم رو هارد و به کمکش فایل مورد نظر رو اجرا کرد. شما وقتی برنامه مینویسی بعدا چطور ازش استفاده میکنی؟ رو هر سیستمی بخوای ازش استفاده کنی سورس رو میبری و ویبی رو نصب میکنی و f5 میزنی؟ از منوی فایل Make project.exe رو بزنی یه فایل exe بهت میده که برنامت هست. MichaelQwerty18-01-2009, 02:32 PMخیلی ممنونم که راهنماییم کردین Make project.exe اینو میدونم منظورم این بود که زیاد چیزی بلد نیستم تا شما کامل تر توضیح بدین که دادین آقا پیمان من این بحث رو در forum دیگه ای مطرح کردم یکی این جوابو به من داد: اولين پارامتر تابع ShellExecuteA هندل پنجره اي است که تابع بايد تحت آن اجرا شود(hwnd) وقتي اين پارامتر رو با Me.hwnd يا Formx.hwnd مقدار دهي كنيد به اين معني هست كه برنامه موردنظر از طريق برنامه شما اجرا شود. هندل Explorer را بدست آوريد و برنامه را تحت آن اجرا كنيد. موفق باشيد/ حالا این هندلو با چه code ی در بیارم فکر نکنم جواب بده نظر شما در باره این راه چیه؟ Payman_6219-01-2009, 02:27 PMسلام. اتفاقا منم همین فکر به ذهنم رسید. چون ابتدا با me.hWnd اجرا میکردم. یعنی هندل فرم برنامه خودم. بعد به جای هندل عدد 0 رو قرار دادم تا نتیجه رو ببنیم. ولی باز هم همون مشکل وجود داشت. حتی هندل یه برنامه دیگه که باز بود رو قرار دادم. ولی باز اون مشکل وجود داشت. ولی هندل اکسپلورر رو امتحان نکردم. امتحان میکنم نتیجه رو میگم. Payman_6219-01-2009, 03:38 PMسلام. من به جای اکسپلورر لیست کل پنجره های اصلی ویندوز که اکسپلورر رو هم شامل میشه رو گرفتم و هندل تک تکشون رو تست کردم. یعنی این لیست: http://payman.parsaspace.com/Pictures/windows_hWnd.JPG فقط رو 2 تا پنجره 1 پیغام جالب داد و برنامه دوم بسته نشد. http://payman.parsaspace.com/Pictures/End_prc_er.JPG رو یکی از پنجره های M فقط 1 بار و رو پنجره CiceroUIWndFrame هم 2 بار این پیغام نمایش داده شد و برنامه دومی که باز کرده بودم بسته نشد. ولی برنامه اول بسته شد. این 2 پنجره رو شاید 5 یا 6 بار تست کردم. دفعه های بعد هر دو برنامه با هم بسته میشدن. نتیجه این که استفاده از هندل اکسپلورر و دیگر پنجره های اصلی ویندوز نتونست جلوی بسته شدن برنامه دوم رو بگیره. MichaelQwerty20-01-2009, 06:56 AMممنونم که وقت میزارین تا جواب منو بدین حالا برگردیم به برنامه خودتون من چند تا مشکل دارم: dim bytrerunner() as byte این () این پرانتز جلوی متغیر چه تاثیری میزاره؟ bytrerunner = loadresdata(101, "custom") عدد 101 چی اشاره داره؟؟ put #1, , bytrerunner این دستور را اولین باره دیدم کارش چیه؟؟؟ doevents این دستور چه وظیفه ای داره؟؟؟؟ sleep 10 این api کارش چیه کجاها به کار میره؟؟؟؟؟ ببخشید زیاد شد Payman_6220-01-2009, 12:59 PMسلام. یکی از این pdf های ویبی رو دانلود کن و بخون. خیلی از سوالاتت برطرف میشه. پرانتز برای تعریف آرایه هست. 101 کد فایل رویسورس شدست. اگه رو همون آیکون سبز پروژه کلیک کنی میبینی که فایل ریسورس شده کد 101 داره. put برای ذخیره مقدار تو فایل هست. یه چیزی مثل write و print. doevents به برنامه میگه برای توابع دیگه و ترد های دیگه هم وقت بذاره تا برنامه قفل نشه. در غیر این صورت فقط دستورات داخل حلقه اجرا میشه و برنامه لاک میشه. sleep با توجه به زمانی که بهش میدی یه مکث تو برنامه ایجاد میکنه. پارامترش بر اساس میلی ثانیست. یعنی 1000 بهش بدی 1 ثانیه مکث میندازه. MichaelQwerty20-01-2009, 10:26 PMباز هم متشکرم که جوابم رو دادی کتاب VB 6 زیاد دارم به غیر از آرایه ها که فراموش کرده بودم (چون خیلی وقته که استفاده نمی کنم) اکثرا درباره Api و res دراین کتاب ها چیز زیادی ننوشته درباره برنامه شما یه چیز جالب avir آنتی ویروس میگیره به این اسم is the TR/Dropper.Gen Trojan یه چیزی میگم نخندیا من اولین زبان برنامه نویسی که شروع کردم اسمبلی بود بدلیل علاقه شدید به ساخت ویروس چه مسخره نه؟ولی نه به دلیل قدرتش چون سطح دسترسیش زیاده تا هسته سیستم به زودی در مورد هوش مصنوعی آنتی ویروسها یه بحث راه میندازم Payman_6221-01-2009, 03:46 AMسلام. احتمالا به خاطر استفاده از ای پی آی shellexecute هستش. معمولا آنتی ها به ران کردن یه فایل جدید گیر میدن و میگن این برنامه میخواد این فایل رو از این مسیر ران کنه. اجازه میدی؟ ولی این که میگی به عنوان تروجان شناسایی کرد خیلی جالبه. آنتیت چیه؟ کسپر خود من که کاری به برنامم نداشت. فقط اولین بار موقع ران کردن فایل ریسورس گیر داد که اجازه رو دادم. بحث در مورد هوش مصنوعی همیشه جالب و همیشه مشکل بوده. بحث خوبیه راه بنداز. سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 722]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن