ورود

View Full Version : سوال: اجرای یک فایل pdf از یک تکست باکس



hmgjob
سه شنبه 21 فروردین 1397, 16:54 عصر
سلام
من در ویژوال فاکس پرو یک فرم دارم که داخلش یک تکست باکس هست و می تونم یک متن یا عدد در اون بنویسم
حالا چند فایل pdf هم دارم که به ترتیب از شماره 1 تا 5 نامگذاری شده اند
چطوری میتونم عدد مورد نظر رو در تکست باکس بنویسم و بعد از اینتر زدن فایل pdf ای که نامش همنام اون عدد هست اجرا بشه؟

farhad_shiri_ex
سه شنبه 21 فروردین 1397, 17:50 عصر
تو متد valid کدهای زیر رو بنویسید.!


WshShell = CreateObject("WScript.Shell")
WshShell.Run("pdfReader.exe Pdf Path\pdf"+str(pdfNumber))


اگر هم درباره شل اسکریپت متد RUN هم بخواهید این Usage Syntax داره


object.Run (Command [, WindowStyle] [, WaitOnReturn])
Windows Style
0 Hides the window and activates another window.
1 Activates and displays a window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when displaying the window for the first time.

2 Activates the window and displays it as a minimized window.
3 Activates the window and displays it as a maximized window.
4 Displays a window in its most recent size and position. The active window remains active.
5 Activates the window and displays it in its current size and position.
6 Minimizes the specified window and activates the next top-level window in the Z order.
7 Displays the window as a minimized window. The active window remains active.
8 Displays the window in its current state. The active window remains active.
9 Activates and displays the window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when restoring a minimized window.

10 Sets the show state based on the state of the program that started the application.

WaitOnReturn
The optional WaitOnReturn parameter is a boolean value that specifies whether the script should immediately returns to script execution (False) rather than waiting for the process to end (True) and return any error codes returned by the application.

hmgjob
چهارشنبه 22 فروردین 1397, 14:47 عصر
برادر من خیلی مبتدی هستم
یه جوری بگید بدون درد سر بتونم انجام بدم
البته اگه یک مثال ساده فرمش را درست کنید که عالی میشه
خیلی ممنون میشم

farhad_shiri_ex
چهارشنبه 22 فروردین 1397, 15:05 عصر
باشه چشم اگر میخواهید فرم اش بذارید همین جا فقط همون فرم که لازم دارید من انجام بدم.!

ولی توضیح میدم هر طور مایل هستید.

1- توی فرم تون شی تکست باکس تون انتخاب کنید
2- بعد از پنجره Properties به تب Methods برید
3- متد valid در انتهای لیست متدهاست با دبل کلیک باز کنید.
4- این دو خط توش کپی کنید.


WshShell = CreateObject("WScript.Shell")
WshShell.Run("pdfReader.exe Pdf Path\pdf"+str(pdfNumber))

5- تغییرات فرم رو ذخیره کنید اگر پروژه دارید که از پروژه سورس شروع را اجرا کنید. ویا exe فایل بسازید و اجرا کنید.
6- فقط از ویندوز XP به بعد کتابخانه شل اسکریپت تو ویندوز به صورت پیش فرض وجود داره اگر احیانا خطایی داشتید همین جا اعلام کنید.

hmgjob
چهارشنبه 22 فروردین 1397, 15:45 عصر
بسیار عالی و ممنون
فقط اگه امکان داره اون نمونه رو هم درست بفرمائید بسیار ممنونتون میشم

farhad_shiri_ex
چهارشنبه 22 فروردین 1397, 16:24 عصر
اینم نمونه فرم ...

hmgjob
چهارشنبه 22 فروردین 1397, 17:07 عصر
شرمنده خطا می گیره و عمل نمیکنه
من فایل های pdf رو ریختم داخل فولدر خود فرم و بعد از اجرای برنامه عدد رو که می زنم خطا می گیره

farhad_shiri_ex
چهارشنبه 22 فروردین 1397, 17:09 عصر
از خطا لطفا یه اسکرین شات بگیر تا ببینم چی ؟

hmgjob
چهارشنبه 22 فروردین 1397, 17:15 عصر
147922

خطایی که میگیره

farhad_shiri_ex
چهارشنبه 22 فروردین 1397, 17:37 عصر
ظاهرا ویندوز 7 دارین این کتابخانه رو اینطوری رجیستر کن


Start --> Run -->regsvr32.exe wshom.ocx"

نسخه 32 بیتی و 64 بیتی متناسب با ویندوزت رجیستر کن یکبارهم ریست کن سیستم رو اگر بازهم نشد باید خودت زحمت بکشی همین wshom.ocx فایل رو تو گوگل برای ویندوز خودت هرچی هست دانلود کنی مطمن باش مشکلی نداره.

فقط نام برنامه ای که pdf رو میخونه همونی که روی سیستم خودت هست حتما بذار توی متد Valid تکست باکس رو میگم

hmgjob
چهارشنبه 22 فروردین 1397, 17:45 عصر
147924
این خطا رو می گیره موقع نصب

farhad_shiri_ex
چهارشنبه 22 فروردین 1397, 18:54 عصر
این ocx من گذاشتم رو نصب نکن تو گوگل جستجو کن نسخه مناسب ویندوزت رو بگیر درضمن کاربر admin ویندوز هم باید باشید.
اگر نشد این دوتا دستور جای اون دوتا دستور تو valid بنویس


filename = str(this.Value)+".pdf"
! /N pdfReader.exe &filename

hmgjob
پنج شنبه 23 فروردین 1397, 13:58 عصر
نسخه مربوط به ویندوز خودم رو گرفتم ولی نصب نشد
راه دیگه ای نداره بشه یه فایل pdf رو از نامش اجرا کرد؟

farhad_shiri_ex
پنج شنبه 23 فروردین 1397, 14:39 عصر
دوست عزیزم یکم توجه کن توپست قبلی گفتم اون ocx رو بیخیال شو این دوخط را بنویس تو valid تکست باکس ات.


filename = str(this.Value)+".pdf"
! /N pdfReader.exe &filename

hmgjob
پنج شنبه 23 فروردین 1397, 15:26 عصر
147927
اون دوتا کد رو زدم
این خطا رو میده
وقتی عدد رو در تکست باکس می زنم

farhad_shiri_ex
پنج شنبه 23 فروردین 1397, 16:08 عصر
این برای این که من نوع تکست باکس رو Numeric تعریف کردم بخاطر همین نوعش رو اینطوری تبدیل کردم به رشته str(this.value)
حالا مقدار خاصیت value تکست باکس تون رو 0 مقدار دهی کنید مشکل حل میشه از قسمت پنجره Properties از تب Data

hmgjob
شنبه 25 فروردین 1397, 15:35 عصر
هر کار میکنم نمیشه
حالا اگه pdf ام رو تبدیل کنم به exe چطور میتونم از یک تکست باکس اجراش کنم؟

hmgjob
یک شنبه 26 فروردین 1397, 11:15 صبح
عزیزان کمک

farhad_shiri_ex
یک شنبه 26 فروردین 1397, 14:11 عصر
عزیزان کمک

دوست عزیز اگر امکانشو داری که فرم خودتو بذار اینجا برات رفع اشکال کنم بالاتر هم که توضیح دادم نمیخواد فایل pdf بذاری فقط همون سورسی که احتیاج به تغییر داره همینجا آپلود کنه !!!

hmgjob
یک شنبه 26 فروردین 1397, 16:10 عصر
سورسی نداره این قسمت
فقط یک فرم نیاز دارم که داخلش یک تکست باکس باشه و وقتی یک عدد رو میزنم و همون عدد اسم یک فایل pdf هست اون فایل اجرا بشه
اگه فرمش رو برام درست کنید تماما ممنونتون میشم قربان

binyaz2003
یک شنبه 26 فروردین 1397, 20:32 عصر
دوست عزیز، درست است که دوستان اینجا سعی خیلی زیادی میکنند که مشکلات شما رو حل کنند به هر نحو اما اینکه شما اینطور که من دیدم در چند موضوع، هیچ تلاشی خودتون نمیکنید یک کم ناراحت کننده است.
سایت های زیادی هست که این مسائل بارها و بارها توش مطرح شده و با یک جستجوی ساده میشه این مسائل رو حل کرد. سایتهایی مثل: www.foxite.com یا www.tek-tips.com و ...

لطفا


سورسی نداره این قسمت
فقط یک فرم نیاز دارم که داخلش یک تکست باکس باشه و وقتی یک عدد رو میزنم و همون عدد اسم یک فایل pdf هست اون فایل اجرا بشه
اگه فرمش رو برام درست کنید تماما ممنونتون میشم قربان

hmgjob
دوشنبه 27 فروردین 1397, 09:08 صبح
شاید اینکه شما بزرگوار و دوستان دیگر به صورت حرفه ای برنامه نویسی می فرمائید باعث شده باشه که چنین نتیجه گیری داشته باشید ولی من به عنوان یک مبتدی بسیار تازه کار بسیاری از اوقات در مشکلاتی گیر می کنم که شاید حل کردنش برای شما دوست عزیزم فقط یک دقیقه طول بکشد. در این تایپیک هایی که از شما کمک گرفتم توانستم به لطف شما و دیگر عزیزان بسیار مطالب آموزنده ای یاد بگیرم گرچه با سوالات بسیار ساده خودم ممکن است باعث آزرده خاطر شدن شما و اینکه چنین نتیجه گیری بفرمایید بشوم ولی واقعا چنین قصدی نداشتم. به هر حال توان و دانش هر کسی متفاوت است و بنده با اعتقاد به اینکه از توان بسیار پائینی در برنامه نویسی برخوردار هستم تمام تلاش خودم را می کنم که حداکثر استفاده از اساتیدی چون شما را داشته باشم.
باز هم از حضور شما عذر خواهی می کنم

farhad_shiri_ex
دوشنبه 27 فروردین 1397, 14:49 عصر
شاید اینکه شما بزرگوار و دوستان دیگر به صورت حرفه ای برنامه نویسی می فرمائید باعث شده باشه که چنین نتیجه گیری داشته باشید ولی من به عنوان یک مبتدی بسیار تازه کار بسیاری از اوقات در مشکلاتی گیر می کنم که شاید حل کردنش برای شما دوست عزیزم فقط یک دقیقه طول بکشد. در این تایپیک هایی که از شما کمک گرفتم توانستم به لطف شما و دیگر عزیزان بسیار مطالب آموزنده ای یاد بگیرم گرچه با سوالات بسیار ساده خودم ممکن است باعث آزرده خاطر شدن شما و اینکه چنین نتیجه گیری بفرمایید بشوم ولی واقعا چنین قصدی نداشتم. به هر حال توان و دانش هر کسی متفاوت است و بنده با اعتقاد به اینکه از توان بسیار پائینی در برنامه نویسی برخوردار هستم تمام تلاش خودم را می کنم که حداکثر استفاده از اساتیدی چون شما را داشته باشم.
باز هم از حضور شما عذر خواهی می کنم

من نظر خودم رو دارم بیان میکنم..
دوست عزیز مطمئن باشید اصلا منظور این نیست که بخواهیم به برنامه نویسی که مبتدی کمک نکنیم ویا آزرده خاطر کنیم این چه حرفی فکر نکنم نیازی به عذر خواهی باشه.!
از طرفی یادتون باشه بالاخره همه ما یه روزی مبتدی بودیم..
ولی خوب الان خیلی بهتر از 10 - 15 سال گذشته شدده منابع خیلی بیشتر شده برنامه نویس خوب زیادتر شده.
حالا منظورم از گفتن این حرف این هست که برای برنامه نویس خوب شدن راههای زیادی وجود داره
1- علاقه و دوست داشتن برنامه نویسی
2- مطالعه مطالعه مطالعه ...
3- استفاده از منابع آموزشی مختلف در هر زمان حتی وفتی که خیلی حرفه ای هم شدید.
4- تمرین و ممارست برنامه نویسی وکدنویسی
5- استفاده از تجربیات مفید دیگران و استفاده از تکنیکهای برنامه نویسی قابل استناد
6- مطالعه سورس کدهای دیگران و سعی در تغییر آنها برای استفاده در برنامه های خود
7- استفاده از کتابخانه ها و یا سورس کدهای از قبل نوشته شده و تست شده و درک استفاده بهینه از آنها
...
والبته بسیاری مطالب دیگر که کم کم خودتون با پیشرفت در برنامه نویسی بهشون می رسید ولی این چند نکته از مهمترین هاست که هر برنامه نویسی بالاخره باید بدونه و رعایت کنه.

hmgjob
دوشنبه 27 فروردین 1397, 16:49 عصر
فقط یک فرم نیاز دارم که داخلش یک تکست باکس باشه و وقتی یک عدد رو میزنم و همون عدد اسم یک فایل pdf هست اون فایل اجرا بشه
اگه فرمش رو برام درست کنید تماما ممنونتون میشم قربان

hmgjob
دوشنبه 27 فروردین 1397, 16:53 عصر
آقا ممنون با لطف شما بزرگواران درست شد
خیلی ممنون از صبر و پاسخ گویی شما

farhad_shiri_ex
دوشنبه 27 فروردین 1397, 18:13 عصر
آقا ممنون با لطف شما بزرگواران درست شد
خیلی ممنون از صبر و پاسخ گویی شما

احسنت بر شما :تشویق::تشویق::تشویق:


- علاقه و دوست داشتن برنامه نویسی
2- مطالعه مطالعه مطالعه ...
3- استفاده از منابع آموزشی مختلف در هر زمان حتی وفتی که خیلی حرفه ای هم شدید.
4- تمرین و ممارست برنامه نویسی وکدنویسی
5- استفاده از تجربیات مفید دیگران و استفاده از تکنیکهای برنامه نویسی قابل استناد
6- مطالعه سورس کدهای دیگران و سعی در تغییر آنها برای استفاده در برنامه های خود
7- استفاده از کتابخانه ها و یا سورس کدهای از قبل نوشته شده و تست شده و درک استفاده بهینه از آنها
...

به موارد بالا صبر و حوصله رو هم اضافه کن! :لبخند::لبخند::لبخند:
هر وقت هم دیدی یه مشکلی رو نمیتونی حل کنید فقط ناامید نشو و یک یا دو روز سراغ اون تکه کد که مشکل داری نرو به خودت زمان بده بعد برو سراغش اونوقت مبینی جادو میشه و حلش میکنی البته نکاتی هم که گفتم مدنظر داشته باشه.!
و اینکه به نظر من برای تمام چالش های برنامه نویسی تو هر زبانی که باشه یه راه حل وجود داره حالا یک راه خیلی بهینه است یک راه هم با اینکه جواب میده بهینه نیست باید در شرایط اش باشی تا عمقی درک کنید