Я пытаюсь написать простую программу с использованием WinSnmp на C ++. Там очень мало информации об этом, и я полностью потерян. Все, что я хочу сделать, это запросить принтеры в моей сети и прочитать информацию, отправленную мне. Вот мой код:
#include <WinSnmp.h>
#include <stdio.h>
smiLPUINT32 majorVers;
smiLPUINT32 minorVers;
smiLPUINT32 nLevel;
smiLPUINT32 translateMode;
smiLPUINT32 retranslateMode;
BYTE pdu;
int main()
{
//Starting the snmp session
SnmpStartup(majorVers, minorVers, nLevel, translateMode, retranslateMode);
printf("%i majorVers \n %i minorVers \n "
"%i nLevel \n "
"%i translateMode \n "
"%i retranslateMode \n\n",
majorVers, minorVers, nLevel, translateMode, retranslateMode);
SnmpCleanup();
}
До сих пор я следовал API , пытаясь выяснить, как программа должна быть структурирована, но сложно написать программу, полностью основанную на API.
Я не могу найти хорошие учебники, примеры кода или полезную документацию в Интернете. Мне было интересно, знает ли кто-нибудь что-нибудь, что может привести меня в правильном направлении, например, рабочие фрагменты кода или полезные учебники, это было бы здорово. Заранее спасибо:)
РЕДАКТИРОВАТЬ: Я сделал немного прогресса, но я все еще застрял. Я пытаюсь выяснить значение окна консоли, чтобы передать его функции SnmpCreateSession, но у меня возникли проблемы. вот мой обновленный код:
#include <WinSnmp.h>
#include <stdio.h>
#define MY_BUFSIZE 1024 // Buffer size for console window titles.
smiLPUINT32 majorVers;
smiLPUINT32 minorVers;
smiLPUINT32 nLevel;
smiLPUINT32 translateMode;
smiLPUINT32 retranslateMode;
HWND window;
HWND hwndFound;
char* returnInfo;
char newWindowTitle[MY_BUFSIZE];
char oldWindowTitle[MY_BUFSIZE];
LPWSTR consoleTitle;
BYTE pdu = 1;
void Startup(){
//Starting the snmp session
SnmpStartup(majorVers, minorVers, nLevel, translateMode, retranslateMode);
printf("%i majorVers \n"
"%i minorVers \n"
"%i nLevel \n"
"%i translateMode \n"
"%i retranslateMode \n\n",
majorVers, minorVers, nLevel, translateMode, retranslateMode);
GetConsoleTitle(oldWindowTitle, MY_BUFSIZE);
hwndFound = FindWindow(NULL, oldWindowTitle);
}
void CreateSession(){
SnmpCreateSession(window,5,0,0);
printf("create session returns: %s", SnmpCreateSession(window,5,0,0));
}
int main(){
Startup();
CreateSession();
SnmpCleanup();
}
Все значения, которые у меня заканчиваются, на этом этапе равны NULL ... Я не знаю, что делать дальше.