اذهب الي المحتوي
أوفيسنا

طلب كود


إذهب إلى أفضل إجابة Solved by jjafferr,

الردود الموصى بها

السلام عليكم ... هل يوجد كود يقوم بفتح اي ملف سواء ملف صوت او صورة او ملف تنفيذي بمجر وضع مسار الملف  المحدد  بمعنى يقوم بعمل الدبل كلك بالوندوز للملف 

رابط هذا التعليق
شارك

هلا اخي

وهذه طريقة اخرى...استدعي الدالة ExecuteFile

مصدر الكود من الموقع

MS Access VBA – Open a File

Option Compare Database
Option Explicit

'Source: http://www.pacificdb.com.au/MVP/Code/ExeFile.htm
Public Const SW_HIDE = 0
Public Const SW_MINIMIZE = 6
Public Const SW_RESTORE = 9
Public Const SW_SHOW = 5
Public Const SW_SHOWMAXIMIZED = 3
Public Const SW_SHOWMINIMIZED = 2
Public Const SW_SHOWMINNOACTIVE = 7
Public Const SW_SHOWNA = 8
Public Const SW_SHOWNOACTIVATE = 4
Public Const SW_SHOWNORMAL = 1
 
Public 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 Sub ExecuteFile(sFileName As String, Optional ByVal sAction As String = "Open")
    Dim vReturn As Long
    'sAction can be either "Open" or "Print".
 
    If ShellExecute(Access.hWndAccessApp, sAction, sFileName, vbNullString, "", SW_SHOWNORMAL) < 33 Then
        DoCmd.Beep
        MsgBox "File not found."
    End If
End Sub

 

  • Like 2
رابط هذا التعليق
شارك

الكود الذي اعطيتك ، والذي اعطاك ابو تراب ، يفتح البرنامج الآخر ولا ينتظر ان يُنهي البرنامج عمله ، وينتقل الطود للسطر التالي ، ولكن

وفي بعض الاوقات ، تريد ان تفتح برنامج (او بمعنى اصح ، تريد ان تفتح برنامج ، وتكون قد ارسلت اليه المتغيرات المطلوبة مثل عمل QR Code مثلا) ،

وتريد VBE ينتظر انتهاء البرنامج من عمله ، لهذا السبب نستعمل كود مثل Shell_n_Wait : https://github.com/xxdoc/vb6-Shell-Wait/blob/master/Shell %26 Wait v2/modShellWait.bas

بنفس طريقة استعمال Shell او ExecuteFile اللي عرضه اخي ابو تراب ، شوف سطر عمله :
 

 

جعفر

  • Like 2
رابط هذا التعليق
شارك

52 دقائق مضت, jjafferr said:

وعليكم السلام 🙂

 

اذا كان strFile هو اسم الملف + مساره ، فتستطيع فتحه هكذا:


application.followhyperlink strFile

 

جعفر

استاذ @jjafferr لو سمحت  اين الخطا عندي 

Captur33e.JPG

رابط هذا التعليق
شارك

استاذ @jjafferr فتح معي لكن هناك مشكلة رسالة تحذيرية من الاوفيس تخبرني انة لايفضل فتح البرنامج هكذا لانة احتمال بعض الملفات تحوي فاييروس تضر بالكومبيوتر هل بالامكان التخلص من هذة الرسالة التحذيرية

Captur33e.JPG

رابط هذا التعليق
شارك

نعم هذه مشكلة الاوفيس مع البرامج اللي ما تثق فيها !!

 

جرب البرنامج الآخر :

shell("C:\...\...\calc.exe",0)
  
  
  او

shell("C:\...\...\calc.exe",vbhidden)  

 

وبنفس الطريقة تقدر تجرب المقترحات الاخرى ، مجرد انك تحفظ الكود في وحدة نمطية مستقلة ، ثم تستعمل الكود التالي لعملها :

ExecuteFile("C:\...\...\calc.exe",0)


  او
  
shell_n_wait("C:\...\...\calc.exe",0)  

 

جعفر

  • Sad 1
رابط هذا التعليق
شارك

  • أفضل إجابة
15 دقائق مضت, ازهر عبد العزيز said:

لا اعرف انشاء وحدة نمطية لتطبيق الكود الاخير

 

1. ادخل في صفحة VBE ،

2.

image.png.8c69aa8c0eb52ff4f7261d9553382c7c.png

.

فتحصل على صفحة جديدة

image.png.1e2c2ba1fe0910da347db8bc1bb58e6d.png

.

3. انسخ الكود من مشاركة اخي ابو تراب ، والصقه في الصفحة ، ثم احفظ الوحدة النمطية باسم مميز مثل mod_ExecuteFile :

image.png.b8fd61588684c4958f9dec221ff8ed59.png

.

4. والآن من اي حدث ، نادي الوحدة النمطية هكذا :

ExecuteFile "C:\Windows\System32\calc.exe"


  

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information