أهلا بك يا زائر .. لديك 0 مشاركة
 
الرئيسية1بحـثالتسجيلالتسجيلدخولدردشة أبناء أفاميا

شاطر | 
 

 أمثلة و أكواد للتعامل مع دوال Api

اذهب الى الأسفل 
كاتب الموضوعرسالة
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:11

السلام عليكم ورحمة الله و بركاته

سيتم وضع العديد من الكودات و الامثلة للتعامل مع دوال ا بي اي
لذلك من يجد ان لديه كود معين في هذا المضمار يستطيع إضافته مشكوراً





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:15

فحص ما إذا كان برنامجك قيد التشغيل
رمز:
Private Sub Form_Load()

'// Not the best way to check
'// Better to use the FindWindow API

If App.PrevInstance = True Then
MsgBox ("This program is already running.")
End
End If

End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:16

إغلاق تطبيق معين بمعرفة اسمه
رمز:
Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long

Declare Function PostMessage Lib "user32" Alias _
"PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long

Public Const WM_CLOSE = &H10

Private Sub cmdClose_Click()

Dim winHwnd As Long
Dim RetVal As Long

winHwnd = FindWindow(vbNullString, Text1.Text)

Debug.Print winHwnd

If winHwnd <> 0 Then
RetVal = PostMessage(winHwnd, WM_CLOSE, 0&, 0&)
If RetVal = 0 Then
MsgBox "Error posting message."
End If
Else
MsgBox Text1.Text + " is not open."
End If

End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:17

معرفة الوقت الذي مضى على تشغيل الويندوز
رمز:
Declare Function GetTickCount& Lib "kernel32" ()

Private Sub cmdWinRun_Click()
MsgBox GetTickCount
End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:17

معرفة إحداثيات الماوس داخل وخارج الفورم
رمز:
Private Declare Function GetCursorPos Lib "user32" (lpPoint As _
POINTAPI) As Long

Private Type POINTAPI
x As Long
y As Long
End Type
Dim a As POINTAPI
Dim b As Long
Dim c As Long
' add labels and timer control in the form
Private Sub Form_Load()
Timer1.Interval = 1
End Sub

Private Sub Timer1_Timer()
mousepos
End Sub

Private Sub mousepos()
ret = GetCursorPos(a)
b = a.x
c = a.y
Label1.Caption = b
Label2.Caption = c
End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:18

معرفة اسم المستخدم
رمز:
Declare Function GetUserName Lib "advapi32.dll" Alias _
"GetUserNameA" (ByVal lpBuffer As String, nSize As Long) _
As Long

Private Sub Form_Load()
Dim s As String
Dim cnt As Long
Dim dl As Long
Dim CurUser As String
cnt = 199
s = String$(200, 0)
dl = GetUserName(s, cnt)
If dl <> 0 Then CurUser = Left$(s, cnt) Else CurUser = ""
Label1.Caption = CurUser
End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:26

فتح لوحة التحكم
رمز:
Private Sub Command1_Click()
Shell ("rundll32.exe shell32.dll,Control_RunDLL")
End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:27

وضع برنامجك إلى جانب الساعة
رمز:
Option Explicit
Private Type NOTIFYICONDATA
cbSize As Long
hWnd As Long
uId As Long
uFlags As Long
ucallbackMessage As Long
hIcon As Long
szTip As String * 64
End Type

Private Const NIM_ADD = &H0
Private Const NIM_MODIFY = &H1
Private Const NIM_DELETE = &H2
Private Const WM_MOUSEMOVE = &H200
Private Const NIF_MESSAGE = &H1
Private Const NIF_ICON = &H2
Private Const NIF_TIP = &H4

Private Declare Function Shell_NotifyIcon Lib "shell32" _
Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid _
As NOTIFYICONDATA) As Boolean

Dim t As NOTIFYICONDATA

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

Timer1.Enabled = False

t.cbSize = Len(t)
t.hWnd = Picture1.hWnd
t.uId = 1&

Shell_NotifyIcon NIM_DELETE, t

End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Hex(X) = "1E3C" Then
Me.PopupMenu menu1
End If

End Sub

Private Sub Timer1_Timer()
Static i As Long, img As Long
t.cbSize = Len(t)
t.hWnd = Picture1.hWnd
t.uId = 1&
t.uFlags = NIF_ICON
t.hIcon = Picture1.Picture
Shell_NotifyIcon NIM_MODIFY, t
Timer1.Enabled = True
i = i + 1
If i = 2 Then i = 0
End Sub

Private Sub Form_Load()

t.cbSize = Len(t)
t.hWnd = Picture1.hWnd
t.uId = 1&
t.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
t.ucallbackMessage = WM_MOUSEMOVE
t.hIcon = Picture1.Picture
t.szTip = "System Tray" & Chr$(0)

Shell_NotifyIcon NIM_ADD, t

Timer1.Enabled = True

Me.Hide

App.TaskVisible = False

End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الأربعاء 24 مارس - 12:28

عرض خلفية سطح المكتب على الفورم
رمز:
Private Declare Function PaintDesktop Lib "user32" _
(ByVal hdc As Long) As Long

Private Sub Command1_Click()
PaintDesktop Form1.hdc
End Sub

__________________





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
أبو محمد
مؤسس المنتدى
مؤسس المنتدى
avatar


سوريا
ذكر
الــعــــمــر : 30
الــعــمــــــل : مصمم اعلاني
عدد المساهمات : 3276
الانتساب : 06/02/2010


مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الخميس 25 مارس - 23:34

api






الدالة RemoveDirectory

من أسم الدالة يظهر لنا دور هذه الدالة في حذف المجلد المعين
طريقة عملها طبعا بعد وضع تعريف الادات في الMODULE نقوم بانشاء زر نكتب فيه الكود التالي في الفورم:
RemoveDirectory "C:\power"


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]

دع الأيام تغدر كل حينِ Rolling Eyes فما يغني عن الموت الدواءُ


عدل سابقا من قبل مصطفى رعدون في الأربعاء 31 مارس - 7:32 عدل 6 مرات
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://afamia.mam9.com
أبو محمد
مؤسس المنتدى
مؤسس المنتدى
avatar


سوريا
ذكر
الــعــــمــر : 30
الــعــمــــــل : مصمم اعلاني
عدد المساهمات : 3276
الانتساب : 06/02/2010


مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الخميس 25 مارس - 23:36

الدالة ExitWindowsEx

تستخدم للخروج من نظام تشغيل الويندوز نضيف الان بعض الثوابت وهي:
Const EWX_LOGOFF = 0
Const EWX_SHUTDOWN = 1
Const EWX_REBOOT = 2
Const EWX_FORCE = 4

طريقة عملها طبعا بعد وضع تعريف الادات في الMODULE نقوم بانشاء زر نكتب فيه الكود التالي في الفورم:
msg = MsgBox("This program is going to reboot your computer. Press OK to continue or Cancel to stop.", vbCritical + vbOKCancel + 256, App.Title)
If msg = vbCancel Then End
ret& = ExitWindowsEx(EWX_FORCE Or EWX_REBOOT, 0)


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]

دع الأيام تغدر كل حينِ Rolling Eyes فما يغني عن الموت الدواءُ


عدل سابقا من قبل مصطفى رعدون في السبت 27 مارس - 4:49 عدل 2 مرات
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://afamia.mam9.com
@الأسير@
نائب المدير العام
نائب المدير العام
avatar


سوريا
ذكر
الــعــــمــر : 31
الــعــمــــــل : commerce and marketing
عدد المساهمات : 1330
الانتساب : 20/02/2010


مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الجمعة 26 مارس - 2:21



الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
ضياء
مشرف سابق
مشرف سابق
avatar


سوريا
ذكر
الــعــــمــر : 35
الــعــمــــــل : طالب
عدد المساهمات : 450
الانتساب : 17/02/2010


مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الجمعة 26 مارس - 18:37

Thank you
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
امير الغرام
المشرف العام
المشرف العام
avatar


سوريا
ذكر
الــعــمــــــل : design and scientific learning
عدد المساهمات : 1397
الانتساب : 10/03/2010


مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الجمعة 26 مارس - 20:52

مع اني ما فهمت شي بس
مشكووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووور



[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://twitter.com/ousama_helwany
NourAfamia
مشرف قسم البرمجة
مشرف قسم البرمجة
avatar


سوريا
ذكر
الــعــمــــــل : مطور برامج
عدد المساهمات : 112
الانتساب : 20/02/2010

مُساهمةموضوع: رد: أمثلة و أكواد للتعامل مع دوال Api   الجمعة 9 أبريل - 14:34

امير الغرام كتب:
مع اني ما فهمت شي بس
مشكووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووور


شاكر مرور الجميع
أخي الحبيب الapi هي بمفهوم صغير جدا

موجودة في نظامك نفسه عبارة عن اسطر يستعملها النظام لعمليات معينة
فانت بدلا ان تبرمج اداة كاملة لهذه العمليع تستعين بالدوال للقيام بالعملية

مثال بسيط


مثلا في اي جهاز في يوجد شيء اسمه ايقاف تشغيل
فبدل ان تصمم برنامج يخرج عصى خشبية من الكيسس وينزع فيش الكهرباء تقوم باستدعاء هذا الدوال من خلال برنامجك ويتم الامر





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://nourafamia.somee.com
 
أمثلة و أكواد للتعامل مع دوال Api
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتديات أفاميا :: 
(¯`°•.¸¯`°•. منتدى الكمبيوتر والمعلوماتية .•°`¯¸.•°`¯)
 :: البرمجة و ملحقاتها
-
انتقل الى:  
أفضل 10 أعضاء في هذا المنتدى
أبو التراب - 3723
 
أبو محمد - 3276
 
نور الاسلام - 2006
 
امير الغرام - 1397
 
@الأسير@ - 1330
 
عامر الحسن - 863
 
امير العشاق - 594
 
طارق محيميد - 525
 
عدنان مظلوم - 483
 
ضياء - 450