
рдЖрдЬ рд╣рдо рдЗрдВрдЯрд░рдлреЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рдпреВрдЯрд┐рд▓реНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рд╕реЗ рднреА рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВрдЧреЗред рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рджреВрд╕рд░реЗ рд╕реЗ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ
рднрд╛рдЧ 1 рд╕реЗ рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░реЗрдВред
рд╕реНрдЯреАрдо рдореЗрдВ рдбрд┐рдмрдЧ рдореЛрдб рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд▓реЙрдиреНрдЪ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
-dev -console
рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рдХрдВрд╕реЛрд▓ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рд▓рд┐рдЦреЗрдВ:
log_ipc verbose < .exe>
рд╣рдо рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ #include <windows.h> рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВред
рдкрд╣рд▓реЗ рднрд╛рдЧ рд╕реЗ рд╣рдорд╛рд░реЗ рдкрд░реАрдХреНрд╖рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдЖрд╡рд╢реНрдпрдХ рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдХрдиреЗрдХреНрд╢рди рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред
auto *Utils = (ISteamUtils001 *)Client->GetISteamUtils(pipe,STEAMUTILS_INTERFACE_VERSION_001); auto *Apps = (ISteamApps004 *)Client->GetISteamApps(user,pipe,STEAMAPPS_INTERFACE_VERSION_004);
рдЖрдЗрдП рджрд┐рдП рдЧрдП рдЖрдИрдбреА рдХреЗ рд╕рд╛рде рдореЗрд░реЗ рд╕реНрдЯреАрдо рдЦрд╛рддреЗ рдкрд░ рдЧреЗрдо рдЦрд░реАрдж рд╕рдордп рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, AppId_t рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ,
рдЬреЛ рдХрд┐ рдкреНрд░рдХрд╛рд░ uint32 рдХрд╛ рд╣реИ, рдЗрд╕рдореЗрдВ рдореВрд▓реНрдп 500 (рд▓реЗрдлреНрдЯ 4 рдбреЗрдб) рдбрд╛рд▓реЗрдВред
AppId_t l4d(500);
рд╣рдореЗрдВ рдпреВрдирд┐рдХреНрд╕ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЦрд░реАрдж рд╕рдордп рдФрд░ рд╕рд░реНрд╡рд░ рд╕рдордп рдорд┐рд▓рддрд╛ рд╣реИред
int PurchaseTime = Apps->GetEarliestPurchaseUnixTime(l4d); int time = Utils->GetServerRealTime();
рдпреВрдирд┐рдХреНрд╕ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЛ рдорд╛рдирд╡ рджреГрд╢реНрдп рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░реЗрдВред
time_t rawtime = time; time_t Ptime = PurchaseTime; struct tm timeinfo; char timebuf[32]; localtime_s( &timeinfo,&rawtime ); asctime_s (timebuf,32,&timeinfo); printf( "%s \n", timebuf ); localtime_s( &timeinfo,&Ptime); asctime_s (timebuf,32,&timeinfo); printf( "%s \n", timebuf);
рдЖрдЙрдЯрдкреБрдЯ рдкрд░, рдореБрдЭреЗ 1 - рд╕рд░реНрд╡рд░ рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп, 2 - рд╡рд╣ рд╕рдордп рдЬрдм рдореИрдВрдиреЗ рдЧреЗрдо рдЦрд░реАрджрд╛ред
Sat Nov 10 09:51:15 2012 Sat Nov 22 17:03:45 2008
рдЕрдм рдорд┐рддреНрд░реЛрдВ рдХреА рд╕реВрдЪреА рдФрд░ рдЙрдирдХреЗ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп (рдЧреИрд░-рд▓рд┐рдВрдХ рд▓рд┐рдВрдХ) рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
CSteamID curID; int friendcount = Friends->GetFriendCount(); for(int i = 0; i < friendcount; i++) { curID = Friends13->GetFriendByIndex(i, k_EFriendFlagAll); printf("%s - %llu\n", Friends->GetFriendPersonaName(curID), curID.ConvertToUint64()); } system("pause");
рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рд╖реНрдХрд░реНрд╖ рдорд┐рд▓рддреЗ рд╣реИрдВ:
:REC: FabZen - 765611979787897xx DrLuke - 765611979853980xx [EM] Cooler_sk - 765611979862334xx Maryus - 765611979878419xx vorram - 765611979915317xx 0nb0ard - 765611979922297xx ..........
рдореИрдВрдиреЗ рдЕрдВрддрд┐рдо рджреЛ рдЕрдВрдХреЛрдВ рдХреЛ рдкреНрд░рддреАрдХ <x> рдХреЗ рд╕рд╛рде рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдЕрдм рдЗрд╕ рдЖрдИрдбреА рдХреЛ рд╕реНрдЯреАрдореЛрдХреНрдпреВрдирд┐рдЯреА.com/profiles/did рдкрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЪрд▓реЛ рдХреЙрд▓рдмреИрдХ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рд╕рднреА рдХреЙрд▓рдмреИрдХ OpenSteamWorks рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ
FriendsCommon.h рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВред
рдЬрдм рддрдХ рд╣рдо рдПрд╕реНрдХреЗрдк рдХреБрдВрдЬреА рджрдмрд╛рддреЗ рд╣реИрдВ, рддрдм рддрдХ рд╣рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдорд┐рд▓рддрд╛ рд╣реИ, рдлреНрд░реЗрдВрдбрдЪреИрдЯрдореИрд╕_ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде рдЗрд╕рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ, рдпрджрд┐ рд╕реНрдерд┐рддрд┐ рд╕рд╣реА рд╣реИ, рддреЛ рдореИрд╕реЗрдЬ рд▓рд╛рдЗрди рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдХрд░реЗрдВ, рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдпрджрд┐ рд╕рдВрджреЗрд╢ рдХрд╛ рдкреНрд░рдХрд╛рд░ рд╕рд╛рдорд╛рдиреНрдп рдПрдХ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ рдпрд╛ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ - "рд╣реЗрд▓реЛ" рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рд▓рд╛рдЗрди рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ, рдпрджрд┐ рд╕рдорд╛рди рд╣реИ, рддреЛ рднреЗрдЬреЗрдВред рдЧреНрд░реАрдЯрд┐рдВрдЧ рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ, рдореИрдВрдиреЗ рдЖрдЦрд┐рд░реА рдХреЙрд▓рдмреИрдХ рдХреНрд▓рд┐рдпрд░ рдХрд┐рдпрд╛ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЧрдпрд╛ред
CallbackMsg_t callBack; while (!GetAsyncKeyState(VK_ESCAPE)) { Sleep(1); if ( Steam_BGetCallback( pipe, &callBack ) ) { if(callBack.m_iCallback == FriendChatMsg_t::k_iCallback) { FriendChatMsg_t *pFriendMessageInfo = (FriendChatMsg_t *)callBack.m_pubParam; EChatEntryType eMsgType; char szData[k_cchFriendChatMsgMax]; memset(szData, 0, k_cchFriendChatMsgMax); Friends->GetChatMessage(pFriendMessageInfo>m_ulSenderID,pFriendMessageInfo>m_iChatID, szData,sizeof(szData),&eMsgType); if (eMsgType == k_EChatEntryTypeChatMsg || k_EChatEntryTypeEmote) { if (strcmp(szData, "hello") == 0 && (pFriendMessageInfo->m_ulSenderID != User->GetSteamID())){ Friends->SendMsgToFriend(pFriendMessageInfo->m_ulFriendID,k_EChatEntryTypeChatMsg,"hello my friend",22); Steam_FreeLastCallback(pipe); ExitProcess(0); } } } Steam_FreeLastCallback(pipe); } }
рдЯреНрд░реЗрдб рд░рд┐рд╕реНрдкрд╛рдВрд╕ рдкрд░ рдХреЙрд▓рдмреИрдХ рдЙрджрд╛рд╣рд░рдгред
if (callbackMsg.m_iCallback == TradeInviteReceived_t::k_iCallback) { TradeInviteReceived_t* pTradeInviteReceived = (TradeInviteReceived_t*) callbackMsg.m_pubParam; printf("Trade from %s, ID %u\n", pTradeInviteReceived->m_steamIDPartner.SteamRender(), pTradeInviteReceived->m_unTradeRequestID);
рдЕрдЧрд▓рд╛ рд▓реЗрдЦ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ рдХрд╕реНрдЯрдо рдЙрдкрд▓рдмреНрдзрд┐рдпреЛрдВ (ISteamUserStats) рдФрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ (ISteamScreenshots) рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдПред