ראשי > תיכנות > בוט באיסיקיו
mirabiliz.com
תעיין בקודי מקור...הרוב מבוסס על גרסת קוד פתוח של האייסיקיו ב אחד משלביו המוקדמים בויז’ואל בייסיק אך אם זאת יש גם קליינט בסי ללינאקס ואף אחד במירק סקריפט...תעיף מבט.[ההודעה נערכה על-ידי silicon_wolf ב-01/09/2004 20:11:56]
אבל עקרונית יש DLL של הפרוטוקול של איסיקיו, אתה פשוט משתמש בפונקציות ממנו ובונה תוכנה...
אפילו כאן אתה מוצא דרך לכתוב דברים שתלויים ישירות בתוכנות אחרות שצריכות להיות קיימות על המערכת....
ICQAPI.bas
קוד:
Attribute VB_Name = "modICQ1"
Option Explicit
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (ByVal lpString As Long) As Long
Declare Sub RtlMoveMemory Lib "kernel32" (dest As Any, src As Any, ByVal cb&)
’ The following are now defined in the icqapi.tlb and no longer need to be declared here
’ The typelib keeps VB from erroring when calling these api.
’’ 1.0000 calls
’Declare Sub FreeUser Lib "ICQMAPI" Alias "ICQAPIUtil_FreeUser" (puser As Long)
’Declare Sub SetUserNotify Lib "ICQMAPI" Alias "ICQAPIUtil_SetUserNotificationFunc" (ByVal uNotificationCode As Long, ByVal pUserFunc As Long)
’
’Declare Function GetDockingState Lib "ICQMAPI" Alias "ICQAPICall_GetDockingState" (iDockingState As Long) As Long
’Declare Function GetFirewallSettings Lib "ICQMAPI" Alias "ICQAPICall_GetFirewallSettings" (oFireWallData As BSICQAPI_FireWallData) As Long
’Declare Function GetFullOwnerData Lib "ICQMAPI" Alias "ICQAPICall_GetFullOwnerData" (ByVal ppUser As Long, ByVal iVersion As Long) As Long
’Declare Function GetFullUserData Lib "ICQMAPI" Alias "ICQAPICall_GetFullUserData" (puser As BSICQAPI_User, ByVal iVersion As Long) As Long
’Declare Function GetOnlineListDetails Lib "ICQMAPI" Alias "ICQAPICall_GetOnlineListDetails" (iCount As Long, ppUser As Long) As Long
’Declare Function GetOnlineListPlacement Lib "ICQMAPI" (iIsShowOnlineList As Long) As Long
’Declare Function GetOnlineListType Lib "ICQMAPI" Alias "ICQAPICall_GetOnlineListType" (iListType As Long) As Long
’Declare Function GetVersion Lib "ICQMAPI" Alias "ICQAPICall_GetVersion" (iVersion As Long) As Long
’Declare Function GetWindowHandle Lib "ICQMAPI" Alias "ICQAPICall_GetWindowHandle" (hWindow As Long) As Long
’Declare Function SendFile Lib "ICQMAPI" Alias "ICQAPICall_SendFile" (ByVal iUIN As Long, ByVal pszFileNames As String) As Long
’Declare Function SetLicenseKey Lib "ICQMAPI" Alias "ICQAPICall_SetLicenseKey" (ByVal pszName As String, ByVal pszPassword As String, ByVal pszLicense As String) As Long
’Declare Function RegisterNotify Lib "ICQMAPI" Alias "ICQAPICall_RegisterNotify" (ByVal iVersion As Long, ByVal iCount As Long, piEvents As Byte) As Long
’Declare Function UnRegisterNotify Lib "ICQMAPI" Alias "ICQAPICall_UnRegisterNotify" () As Long
’
’’ 1.0001 calls - Check for version number => 65537
’Declare Sub FreeUsers Lib "ICQMAPI" Alias "ICQAPIUtil_FreeUsers" (ByVal iCount As Long, ppUsers As Long)
’Declare Sub FreeGroup Lib "ICQMAPI" Alias "ICQAPIUtil_FreeGroup" (pGroup As Long)
’Declare Function GetGroupOnlineListDetails Lib "ICQMAPI" Alias "ICQAPICall_GetGroupOnlineListDetails" (iGroupCount As Long, ppGroups As Long) As Long
’Declare Function SetOwnerPhoneState Lib "ICQMAPI" Alias "ICQAPICall_SetOwnerPhoneState" (ByVal iPhoneState As Long) As Long
’Declare Function SetOwnerState Lib "ICQMAPI" Alias "ICQAPICall_SetOwnerState" (ByVal iState As Long) As Long
’Declare Function SendExternal Lib "ICQMAPI" Alias "ICQAPICall_SendExternal" (ByVal iUIN As Long, ByVal pszExternal As String, ByVal pszMessage As String, ByVal bautosend As Byte) As Long
’Declare Function SendICQMessage Lib "ICQMAPI" Alias "ICQAPICall_SendMessage" (ByVal iUIN As Long, ByVal pszMessage As String) As Long
’Declare Function SendURL Lib "ICQMAPI" Alias "ICQAPICall_SendURL" (ByVal iUIN As Long, ByVal pszMessage As String) As Long
’
’Public Const ICQAPINOTIFY_ONLINELIST_CHANGE = 0&
’Public Const ICQAPINOTIFY_ONLINE_FULLUSERDATA_CHANGE = 1&
’Public Const ICQAPINOTIFY_APPBAR_STATE_CHANGE = 2&
’Public Const ICQAPINOTIFY_ONLINE_PLACEMENT_CHANGE = 3&
’Public Const ICQAPINOTIFY_OWNER_CHANGE = 4&
’Public Const ICQAPINOTIFY_OWNER_FULLUSERDATA_CHANGE = 5&
’Public Const ICQAPINOTIFY_ONLINELIST_HANDLE_CHANGE = 6&
’Public Const ICQAPINOTIFY_FILE_RECEIVED = 8& ’ tried 7& (no good)
’
’Public Const ICQAPINOTIFY_LAST = &H80
’
’Public Const ICQAPINOTIFY_ONLINELISTCHANGE_ONOFF = 1&
’Public Const ICQAPINOTIFY_ONLINELISTCHANGE_FLOAT = 2&
’Public Const ICQAPINOTIFY_ONLINELISTCHANGE_POS = 3&
’
’Public Type BSICQAPI_User
’ m_iUIN As Long
’ m_hFloatWindow As Long
’ m_iIP As Long
’ m_szNickname(19) As Byte
’ m_szFirstName(19) As Byte
’ m_szLastName(19) As Byte
’ m_szEmail(99) As Byte
’ m_szCity(99) As Byte
’ m_szState(99) As Byte
’ m_iCountry As Long
’ m_szCountryName(99) As Byte
’ m_szHomePage(99) As Byte
’ m_iAge As Long
’ m_zsPhone(19) As Byte
’ m_bGender As Byte ’n/a = 0 female = 1 male = 2
’ m_iHomeZip As Long
’ m_iStateFlags As Long
’ pad(2) As Byte ’ pad 3 bytes
’End Type
.....
לינק לעזרה בסי - http://www.thaidev.com/html/vc/icqapi1/icqapi.zip
לינק לעזרה בויבי - http://www.syix.com/wpsjr1/icqapi.zip
או שתשתמש בתוכנה של ifud, תנתח קצת תפאקטים של האיסיקיו, ותבנה הכל מ raw data =)
http://www.ifud.ru/index.php?page=icqmenace[ההודעה נערכה על-ידי spy[D]ir ב-14/11/2004 07:29:35]