PDA

View Full Version : اجرای فایل در مسیر برنامه



ali190
جمعه 09 بهمن 1388, 10:42 صبح
با سلام خدمت دوستان عزیز و گرامی
من یه مشکلی داشتم که میخواستم اینجا خدمتتون مطرح کنم.در واقع من اکثر اوقات توی تالار اکسس هستم و کلاً حوزه فعالیتم اکسسه.
اکسس یک ماکرو سکوریتی داره که در Tools>macro>security که وقتی روی گزینه ای غیر از low باشه زمانیکه کاربر میخواد فایل رو اجرا کنه پیغام های امنیتی برای کاربر میاد که تاخیر در اجرای برنامه میندازه.
حالا من یه برنامه پیدا کردم که با اجرای اون سکیوریتی اکسس خودبخود low میشه (security_low)
حالا تقاضای من از اساتید اینه که در واقع با vb یک برنامه برای من ایجاد کنید که بعد از اجرای اون :
1- ابتدا برنامه security_low که در مسیر همین برنامه باشد اجراء شود(current project path)
2-بعد خود فایل اکسس من اجرا شود که اون هم باید در مسیر همین برنامه باشد
یعنی آدرس متغیر باشه ، هرجا که این سه تا فایل رو گذاشتم با هم ارتباط برقرار کنند.
خواهشاً یا کدها رو بگید یا اگر لطف کردید و برنامه رو خواستید آپ کنید open source باشه تا بتونم بسته به نیازم ویرایشش کنم.
ممنون و متشکرم از لطف شما اساتید.
یا علی

M.T.P
جمعه 09 بهمن 1388, 11:44 صبح
به نظرم مشکلتون با استفاده از تابع App.path که مسیر فایل اجرایی رو برمیگردونه حل میشه


shell app.path & "\" & "security_low.exe"

ali190
جمعه 09 بهمن 1388, 13:17 عصر
با سلام
دوست عزیز خیلی ممنون
من کد شما رو اجرا کردم
برنامه اول رو اجراء کرد
ولی فایل اکسس رو که میخواد باز کنه پیغام زیر رو میده:

http://barnamenevis.org/forum/attachment.php?attachmentid=43313&stc=1&d=1264760139
من کد رو اینطور نوشتم :

"shell app.path & "\" & "ali.mdb

M.T.P
جمعه 09 بهمن 1388, 13:51 عصر
این رو تست کنید ببینید میشه یا نه ، ابتدا در قسمت General این تابع رو تعریف کنید:



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


حالا ازین به جای shell استفاده کن



ShellExecute 0&, vbNullString, app.path & "\ali.mdb", vbNullString, vbNullString, vbNormalFocus