Chciałbym programowo wysłać obrazek do innego klienta w sieci GG. Korzystając z helpa Konnekt'a wymyśliłem coś takiego:
CODE
cMessage msg;
memset(&msg, 0, sizeof(cMessage));
msg.s_size = sizeof(cMessage);
msg.type = MT_IMAGE;
msg.ext = "C:\\Program Files\\Konnekt\\profiles\\Adam\\4Coders2\\temp.gif"; // Ścieżka do pliku
msg.flag = MF_HANDLEDBYUI;
msg.net = NET_GG;
msg.toUid = "Numer odbiorcy";
msg.fromUid = "Mój numer";
msg.time = 0;
sMESSAGESELECT ms;
ms.id = ICMessage(IMC_NEWMESSAGE, (int)&msg);
if (ms.id) ICMessage(IMC_MESSAGEQUEUE, (int)&ms);
Jak się łatwo domyślić coś nie działa. Nie wiem jednak co. Plik jest formatu GIF i zajmuje ok. 160B. Wysłanie go za pomocą GGImage kończy się sukcesem. Co robie źle i jak to naprawić?
I jeszcze jedno pytanko, aby się ostatecznie upewnić: Kto jest odpowiedzialny za zwalnianie wszelkich zmiennych tekstowych w wiadomościach? Ja jako ten który je zaalokował, Konnekt w momencie kiedy wiadomość została wysłana i jest usuwana z kolejki, czy autor wtyczki, która jako ostatnia przetwarza wiadomość przed wysłaniem (czyli chyba ta, która otrzymuje IM_MSG_OPEN)? Jeżeli ja, to skąd mam wiedzieć kiedy bufor nie jest już potrzebny?