ورود

View Full Version : نمایش خروجی shellexecute



IKHATAMI
سه شنبه 18 فروردین 1388, 10:56 صبح
با سلام و خسته نباشید به اعضاء محترم
من در برنامه ام یک فرم دارم که در آن فرم باید انواع و اقسام فایلها در سمت چپ پیش نمایش داده شود من برای نمایش فایلهای درون دستگاهم از تابع
shellexecute
استفاده می کنم ولی مشکل اینجاست که خروجی در صفحه خود برنامه ها به نمایش در می آید و در فرم من قرار نمی گیرد
به عنوان مثال یک فایل پاورپوینت برای پیش نمایش برنامه پاورپوینت را اجرا کرده و فایل را داخل آن نمایش می دهد لطفا مرا راهنمایی نمایید.

vcldeveloper
سه شنبه 18 فروردین 1388, 19:01 عصر
خب این طبیعی هست. ShellExecute از روی پسوند فایلی که بهش دادید، بررسی میکنه که چه برنامه ایی به آن اختصاص داده شده (مثلا MS Word برای فایل های .doc)، بعد با پیدا کردن آدرس برنامه مورد نظر، آن برنامه را اجرا میکنه، و اسم فایل شما را به عنوان پارامتر به آن ارسال میکنه. کار ShellExecute این نیست که فایل را در برنامه شما باز کنه.

شما اگر میخواید فایل مستقیما با برنامه خودتون باز بشه، باید برنامه تون قابلیت خواندن آن فایل را داشته باشه، و بتونه آن را نمایش بده؛ مثلا اگر میخواید فایل PowerPoint را باز کنید، باید برنامه شما بتونه فرمت فایل های PowerPoint را بفهمه، و آنها را نمایش بده.
اگر نمیخواید درگیر جزئیات فرمت فایل ها بشید، و فقط میخواید بعضی فایل ها را در برنامه خودتان باز کنید، یک راه استفاده از کنترل OLE Container در دلفی هست که برای مثال، برنامه PowerPoint را در کادری در برنامه شما نمایش میده، و فایل را داخل آن باز میکنه.
درباره OLE Container چندین تاپیک در این تالار وجود داره که می تونید آنها را مطالعه کنید.

IKHATAMI
چهارشنبه 19 فروردین 1388, 07:01 صبح
با سلام
و تشکر از توجه شما
من به روش تابع فوق آشنایی دارم ولی منظورم این بود که بتوانیم به روش خاصی خروجی همین تابع را در جایی مشابه همان olecontainer بیاوریم در واقع در ادیتوری که من در برنامه باید تهیه کنم نمی توانم به برنامه های خاصی بسنده کنم به این خاطر باید حتما از آن تابع استفاده کنم.
من بعضی برنامه های مشابه پیدا کردم ولی اکثرا باگ دار و مشکل ایجاد می کند
باز هم از توجه شما سپاسگزارم.

ستاره تنها
چهارشنبه 15 مهر 1388, 22:01 عصر
سلام
من یه برنامه با دلفی نوشتم که در قسمت منوی راهنمای برنامه می خوام از فایل پاور پوینت استفاده کنم ولی با دستور ShellExecute نشد لطفامن را راهنمایی کنید.

vcldeveloper
پنج شنبه 16 مهر 1388, 01:10 صبح
در قسمت منوی راهنمای برنامه می خوام از فایل پاور پوینت استفاده کنم ولی با دستور ShellExecute نشد
نشد یعنی چی؟ چه اتفاقی افتاد؟ چه خطایی نمایش داده شد؟ چه کدی نوشتید؟