Private Declare Function CreateWindowEx Lib "user32" _
Alias "CreateWindowExA" (ByVal dwExStyle As Long, _
ByVal lpClassName As String, ByVal lpWindowName _
As String, ByVal dwStyle As Long, ByVal X As Long, _
ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight _
As Long, ByVal hWndParent As Long, ByVal hMenu As _
Long, ByVal hInstance As Long, lpParam As Any) As Long
Private Declare Function DestroyWindow Lib "user32" _
(ByVal hwnd As Long) As Long
Private Declare Function GetCursorPos Lib "user32" _
(lpPoint As POINTAPI) As Long
Private Declare Function SetWindowPos Lib "user32" _
(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
Private Declare Function GetDC Lib "user32" (ByVal _
hwnd As Long) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal _
hhDC As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal _
hObject As Long) As Long
Private Declare Function CreateSolidBrush Lib "gdi32" _
(ByVal crctolor As Long) As Long
Private Declare Function FillRect Lib "user32" (ByVal _
hhDC As Long, lpRect As RECT, ByVal hBrush As Long) _
As Long
Private Declare Function SetBkColor Lib "gdi32" (ByVal _
hhDC As Long, ByVal crctolor As Long) As Long
Private Declare Function DrawText Lib "user32" Alias _
"DrawTextA" (ByVal hhDC As Long, ByVal lpStr As _
String, ByVal nCount As Long, lpRect As RECT, _
ByVal wFormat As Long) As Long
Private Declare Function DrawEdge Lib "user32" (ByVal _
hhDC As Long, Rct As RECT, ByVal edge As Long, ByVal _
grfFlags As Long) As Boolean
Private lng_hWnd As Long
Sub GetToolTipText(txt As String)
Dim hDC&, hBrush&, ClrInfo&
Dim pt As POINTAPI, Rct As RECT
ClrInfo = &HE1FFFF
If Not lng_hWnd Then
'انشاء أداة عنوان
lng_hWnd = CreateWindowEx(0, "STATIC", "", WS_POPUP, _
0, 0, 0, 0, hwnd, 0, App.hInstance, 0)
End If
'(الحصول على مقبض سياق الجهاز (منطقة الرسم
hDC = GetDC(lng_hWnd)
SetBkColor hDC, ClrInfo
'الحصول على أبعاد النص
DrawText hDC, txt, Len(txt), Rct, DT_CALCRECT
' الهوامش
Rct.Bottom = Rct.Bottom + 6
Rct.Right = Rct.Right + 6
GetCursorPos pt
'اظهار أداة العنوان في موقع المشيرة
SetWindowPos lng_hWnd, HWND_TOPMOST, pt.X - 5, pt.Y + 20, _
Rct.Right - Rct.Left, Rct.Bottom - Rct.Top, _
SWP_SHOWWINDOW Or SWP_NOACTIVATE
DoEvents
'الحصول على مقبض الفرشاه للتلوين
hBrush = CreateSolidBrush(ClrInfo)
FillRect hDC, Rct, hBrush
DeleteObject hBrush
'رسم الحواف البارزة
DrawEdge hDC, Rct, 1, BF_LEFT Or BF_RIGHT
DrawEdge hDC, Rct, 1, BF_TOP Or BF_BOTTOM
With Rct
.Left = .Left + 3: .Right = .Right - 3
.Top = .Top + 3: .Bottom = .Bottom - 3
End With
'رسم النص
DrawText hDC, txt, Len(txt), Rct, DT_LEFT
End Sub
Private Sub Form_Load()
Timer1.Interval = 50
End Sub
Private Sub Timer1_Timer()
If lng_hWnd Then
DestroyWindow lng_hWnd
End If
GetToolTipText "vb4arab"
End Sub
Private Sub Command1_Click()
Dim X
Dim DialUpConnectName As String
'قم بتحديد اسم الاتصال الذي تود الاتصال به
DialUpConnectName = "Sts"
X = Shell("rundll32.exe rnaui.dll,RnaDial " & DialUpConnectName, 1)
DoEvents
'في حال اردت ارسال كلمة السر ايضا قم باضافتها في النص التالي قبل القوس الاول مباشرة
'"123(enter)"
SendKeys "{enter}", True
DoEvents
End Sub
كود يقوم بحماية برنامجك حيث يعمل عدد من المرات (تحددها بنفسك) ثم يتوقف نهائيا عن الع
Private Sub Form_Load()
retvalue = GetSetting("A", "0", "Runcount")
GD$ = Val(retvalue) + 1
SaveSetting "A", "0", "RunCount", GD$
If GD$ > 3 Then ' الرقم (3) يحدد عدد مرات التشغيل
MsgBox "انتهت مدة تشغيل البرنامج .. عليك بشراء النسخة الاصلية"
Unload FRM '
End If
End Sub
Private Sub Command1_Click()
Open "c:\autoexec.bat" For Input As #1
Count:
n = n + 1
Line Input #1, x
If EOF(1) Then
Label1.Caption = n
Exit Sub
Else
GoTo Count:
End If
Close
End Sub
Private Sub Command1_Click()
On Error GoTo opn:
Winsock1.LocalPort = Text1.Text
Winsock1.Listen
Text2.Text = "المنفذ غير مفتوح"
Winsock1.Close
Exit Sub
opn:
If Err.Number = 10048 Then
Text2.Text = "المنفذ مفتوح"
Else
Text2.Text = "يوجد مشكلة"
End If
Winsock1.Close
End Sub
ElseIf GetSetting(App.Title, "Startup", "counter", "") = "31" Then
MsgBox "شكراً لستخدامك هذا البرنامج " & Chr(10) + Chr(1) & "الرجاء إيقاف عمل هذا البرنامج او سيتم فقدان كل المعلومات التي قمت بإدخالها ", vbCritical, "شكراً لك "
End
Else
TRACEDATE = GetSetting(App.Title, "Startup", "Last Used", "")
chk = DateDiff("d", CDate(TRACEDATE), Now)
If chk < 0 Then 'CHECK IF THE DATE WAS CHANGE which is lesser than the PREVIOUS DATE WHERE THE SYSTEM USED.
MsgBox "لم يتم العثور على تاريخ النظام لديك !! " & Chr(10) + Chr(13) & " الرجاء تغييرة الأن وإلا لن يكون بإمكانك إستخدام هذا البرنامج لاحقاً", vbCritical, "تاريخ مفقود"
End
Else
startdate = GetSetting(App.Title, "Startup", "Started", "")
differenceofdate = DateDiff("d", startdate, Now)
If differenceofdate <> 0 Then
lblcnt.Caption = differenceofdate + 1
SaveSetting App.Title, "Startup", "Last Used", Format(Now, "MM DD YYYY")
SaveSetting App.Title, "Startup", "counter", differenceofdate + 1
End If
If differenceofdate = 0 Then
lblcnt.Caption = GetSetting(App.Title, "Startup", "Counter", "")
End If
End If
End If
End Sub
Private Sub Timer1_Timer()
On Error Resume Next
If Val(Timer1.Tag) < Val(Timer1.Tag) - 1 Then Timer1.Tag = 0
Me.Caption = Right(Text1.Text, Len(Text1.Text) - Val(Timer1.Tag))
Timer1.Tag = Val(Timer1.Tag) + 1
If Me.Caption = "" Then
If Val(Timer1.Tag) > Val(Timer1.Tag) - 1 Then Timer1.Tag = 0
Me.Caption = Left(Text1.Text, Len(Text1.Text) - Val(Timer1.Tag))
Timer1.Tag = Val(Timer1.Tag) + 1
End If
End Sub
Private Sub Form_Load()
Timer1.Enabled = True
End Sub
'ضع هذا الكود في ملف باس bas
Declare Function SearchTreeForFile Lib "IMAGEHLP.DLL" _
(ByVal lpRootPath As String, _
ByVal lpInputName As String, _
ByVal lpOutputName As String) As Long
Public Const MAX_PATH = 260
Public Function FindFile(RootPath As String, _
FileName As String) As String
Dim lNullPos As Long
Dim lResult As Long
Dim sBuffer As String
On Error GoTo FileFind_Error
'Allocate buffer
sBuffer = Space(MAX_PATH * 2)
'Find the file
lResult = SearchTreeForFile(RootPath, FileName, sBuffer)
'Trim null, if exists
If lResult Then
lNullPos = InStr(sBuffer, vbNullChar)
If Not lNullPos Then
sBuffer = Left(sBuffer, lNullPos - 1)
End If
'Return filename
FindFile = sBuffer
Else
'Nothing found
FindFile = vbNullString
End If
أتمنى أن تستخدم زر الكود في الصندوق السحري (الزر الخامس في السطر الثاني) لأنه الكود يطلع مرتب.
مثال ..
كود المصدر
Private Sub Form_Activate()
Dim s As String
For i = 1 To Len(Label1)
s = s & Mid$(Label1, i, 1) & vbCrLf
Next
Label1 = s
End Sub
تحياتي
¨°o.O (على كف القدر نمشي ولا ندري عن المكتوب) O.o°¨ --- أتمنى لكم إقامة طيبة في الساحة العمانية
وأدعوكم للإستفادة بمقالات متقدمة في مجال التقنية والأمن الإلكتروني
رابط مباشر للمقالات هنا. ومن لديه الرغبة بتعلم البرمجة بلغات مختلفة أعرض لكم بعض
المشاريع التي برمجتها مفتوحة المصدر ومجانا للجميع من هنا. تجدون أيضا بعض البرامج المجانية التي قمت بتطويرها بذات الموقع ..
والكثير من أسرار التقنية في عالمي الثانيEagle Eye Digital Solutions