اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

قام بنشر

الزملاء الاعزاء

قمت بعمل برنامج بالاكسس و قمت بإخفاء شاشة الاكسس من خلال البرمجية التالية

Public Declare Function ShowWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

Public Sub HideAccess()
Call ShowWindow(Access.hWndAccessApp, 0)
End Sub

Public Sub ShowAccess()
Call ShowWindow(Access.hWndAccessApp, 5)
End Sub

و عند تشغيل البرنامج على جهاز به ويندوز 64 بت يعطى رسالة خطأ فى السطر

Public Declare Function ShowWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

علماً بان البرنامج مصمم لتوزيعة على الطلاب و يتغير نواه الويندوز على حسب جهاز كل طالب

ماذا أفعل

مع وافر الشكر للزملاء الأفاضل

قام بنشر

جرب هذا السطر بدلا عن الذي عندك

Private Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long 

 

جعفر

  • Like 4
قام بنشر
32 دقائق مضت, الفارس المصرى said:

عند لصق الكود الجديد تظهر رساله خطأ

excepted : sub or function

تقبل تحياتى و إحترامي

ممكن سؤال وتأكد لى رجاء

هل الاوفيس 64 بيت ام الويندوز  64 بيت

للعلم لو ان الاوفيس 32 بيت والويندوز 64 بيت لن تحدث اى مشاكل وانت ذكرت فى مشاركتك 

في 9/21/2017 at 05:49, الفارس المصرى said:

و عند تشغيل البرنامج على جهاز به ويندوز 64 بت يعطى رسالة خطأ فى السطر

علماً بان البرنامج مصمم لتوزيعة على الطلاب و يتغير نواه الويندوز على حسب جهاز كل طالب

ماذا أفعل

 

قام بنشر
منذ ساعه, الفارس المصرى said:

عند لصق الكود الجديد تظهر رساله خطأ

excepted : sub or function

تقبل تحياتى و إحترامي

 

عفوا ، لم انتبه ان الكود عندك Public فانا وضعته Private:blink:

 

استخدم هذا الكود ، بعد ان تم تعديله بإستخدام Public بدلا عن private

Public Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long 

 

جعفر

  • Like 2
قام بنشر

الزملاء الافاضل

قمت بلصق الكود الجديد ليعطى نفس رساله الخطأ عند كلمة Ptrsafe

علماً بان المشكلة بأن البرنامج يتم توزيعة على الطلاب من خلال موقع المدرسة و بالتالى فلا يمكن التحكم فى نوع الاوفس او الويندوز المستخدم لكل طالب

تقبل الجميع شكرى و إمتنانى

قام بنشر
منذ ساعه, الفارس المصرى said:

الزملاء الافاضل

قمت بلصق الكود الجديد ليعطى نفس رساله الخطأ عند كلمة Ptrsafe

علماً بان المشكلة بأن البرنامج يتم توزيعة على الطلاب من خلال موقع المدرسة و بالتالى فلا يمكن التحكم فى نوع الاوفس او الويندوز المستخدم لكل طالب

تقبل الجميع شكرى و إمتنانى

شركات البرمجة الكبيره نفسها تضع المتطلبات لعمل البرنامج :wink2:

- على سبيل المثال 

لاتقل الرامات عن 2 جيجا

1 جيجا كارت شاشة

نظام تشغيل لا يقل عن ويندوز 7

  • Like 1
قام بنشر

لوسمحت تجرب هذا بدلا عن السطر الذي فيه مشكلة ، على الكمبيوترات اللي عليها الاكسس 32بت و 64بت:

#If VBA7 Then
    Private Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
#ElseIf Win64 Then 'need datatype LongPtr
    Private Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As LongPtr, ByVal nCmdShow As LongPtr) As LongPtr
#Else '32-bit Office
    Private Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
#End If

او

#If VBA7 Then
    Public Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
#ElseIf Win64 Then 'need datatype LongPtr
    Public Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As LongPtr, ByVal nCmdShow As LongPtr) As LongPtr
#Else '32-bit Office
    Public Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
#End If

او

Public Declare PtrSafe Function SetWindowPos Lib "user32.dll" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
ByVal X As Long, ByVal Y As Long, ByVal cX As Long, ByVal cY As Long, ByVal wFlags As Long) As Long

او

Public Declare PtrSafe Function ShowWindow Lib "user32" ( _
   ByVal hWnd As LongPtr, _
   ByVal nCmdShow As Long _
) As BooleanPrivate Declare PtrSafe Function ShowWindow Lib "user32" ( _
   ByVal hWnd As LongPtr, _
   ByVal nCmdShow As Long _
) As Boolean

.

 

9 ساعات مضت, sandanet said:

جرب حذف كلمة PtrSafe من الكود فقط

أخي أوس ، لأن نسخة الاكسس عند الفارس المصري 64بت ، لهذا السبب يجب ان نستخدم هذا الامر:smile:

 

جعفر

  • 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