ehsanocx
پنج شنبه 31 فروردین 1391, 10:53 صبح
سلام دوستان
من با این دستور می خوام راهنمایی برنامه رو اجرا کنم راهنمای برنامه هم یک فایل PDF است.
Shell App.Path & "\Help.pdf", vbMaximizedFocus
اما وقتی روی دکمه راهنما می زنم فایل PDF اجرا نمیشه و این پیغام رو میده :
Invalid procedure call or argument
ایراد کارم کجاست؟
محسن واژدی
پنج شنبه 31 فروردین 1391, 11:39 صبح
سلام
چون این تابع فقط فایل های خوداجرا (stand-alone) مانند exe,scr,... را اجرا میکند برای اجرای اسناد این خطا را میدهد، برای اجرای سایر اسناد میتوانید دستور را بصورت زیر بنویسید:
Shell "C:\AdobeReader.exe """ & App.Path & "\Help.pdf""", vbMaximizedFocus
که C:\AdobeReader.exe به برنامه adobe-reader و مسیر دوم که آدرس pdf است همه به عنوان یک پارامتر به این برنامه ارسال میشود
یا کد زیر را در یک مادول قرار دهید:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Public Function ShellX(PathName, Optional WindowStyle As VbAppWinStyle = vbNormalFocus, Optional sParameters$ = vbNullString) As Long
ShellX = ShellExecute(0, "open", PathName, sParameters$, App.Path, WindowStyle)
End Function
و دستورتان را به نام تابع ShellX تغییر دهید:
Private Sub Command1_Click()
ShellX App.Path & "\Help.pdf", vbMaximizedFocus
End Sub
موفق باشید
majid12376
دوشنبه 14 بهمن 1392, 10:19 صبح
سلام این اکتیوایکس رو دانلود کنید
XpdfViewerCtrl.ocx
کارتونو راه می اندازه
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.