ورود

نسخه کامل مشاهده نسخه کامل : بازکردن یه برنامه از طریق برنامه نویسی



aliaghaaaaa
20-02-2011, 13:14
سلام.
خسته نباشید.
فرض کنید من یه عکس رو تو picturebox لود کردم.
حالا می خوام یه دکمه رو فرم داشته باشم که وقتی روش کلیک می کنم:
1- اگه برنامه فتوشاپ باز بود که عکس رو تو فتوشاپ لود کنه.
2- اگه فتوشاپ باز نبود، فتوشاپ رو باز کنه و عکس رو توش لود کنه.
امکان همچین کاری تو سی شارپ هست؟
میشه راهنمایی بفرمایید؟
ممنون.:20:

Msba
22-02-2011, 12:09
می تونید این گونه بنویسید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
جای بخش Save می تونید از مسیرهای Temp استقاده کنید.تا از دید کاربر دور باشد.
برای به دست آوردن مسیر فتوشاب از کلید :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
استفاده کنید که به جای 11.0 می تونید یک foreach برای جستجوش بنویسید.

در این کد لازم است که کاربر حتما عکس رو روی قبلی ذخیره کند. اگر به این روش نمی خواهید می توانید یک openFileDialog قرار دهید.

فتوشاب خودش هوشمند است اگر باز باشد دوباره باز نمی شود بلکه Tab می سازد.
اما اگر می خواهید بدانید باز است یا نه می توانید از Process استفاده کنید.

aliaghaaaaa
22-02-2011, 12:41
سلام.
خیلی ممنون از لطفتون.
ولی میشه در موارد زیر یه کم راهنمایی بفرمایید؟

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
ممنون.

Msba
22-02-2011, 14:11
1- مسیر Temp همون مسیر پوشه ها و فایل های موقت سیستم عامل و نرم افزارهاست.
می توانید از :

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

2-شما نمی دانید که چه نسخه ای از فتوشاپ روی سیستم نصب است پس باید دنبال نسخه آن بگردید.
برای این کار کلید گفته شده رو از رجیستری سیستم بخوانید. ببینید کدام نسخه نصب است.(اصلا فتوشاپ نصب است؟)بعد آدرس نصبش را درآورید. تا بتوانید فتوشاپ را در هر سیستمی اجرا کنید. نه فقط سیستم خودتان.
برای دسترسی به رجیستری هم از:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
استفاده کنید که عناصر Registery , RegisteryKey را در اختیار شما قرار می دهد.

3-برنامه در آن خط متوقف می شود تا فتوشاپ بسته شود.زمانی که بسته شد ادامه برنامه اجرا خواهد شد.

aliaghaaaaa
21-02-2014, 15:54
سلام دوست عزیز.:n18:

[HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\Photoshop\11.0\A pplicationPath]
از اونجایی که من خیلی با رجیستری آشنایی ندارم میشه دستور foreach مربوطه رو برام بنویسید؟
ممنون از لطفتون.

L͠øneWolf
21-02-2014, 18:34
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
ممنون.
به غیر از چیزی که Msba فرمودن، استفاده از کد بالا روش درستی نیست.

باید برنامه هوک بشه تا هر وقت بسته شد برنامه ما باخبر بشه. یه چیزی مثل این:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

aliaghaaaaa
22-02-2014, 16:16
سلام.
ممنون. ولی من میخوام آدرس نصب فتوشاپ رو پیدا کنم. و عکسم رو توش لود کنم.
میشه راهنمایی بفرمایید؟

L͠øneWolf
22-02-2014, 16:41
یه چیزی تو این مایه ها:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

szh_1367
23-02-2014, 12:33
با این کد میتونی تمام برنامه های نصب شده رو سیستم رو ببینی


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

با کوئری گرفتن از Win32_Product هم میتونی این کار رو انجام بدی حتی مسیر نصب فایل ، ورژن نصب شده و . . . رو هم بهت میده

لینک زیر رو ببین [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]