Funktionsproblem
-
Hallo,
ich möchte folgendes machen.
Dies ist etwas speziell aber ich denke auch hierfür gibt es eine Lösung.Folgendes:
Es geht um Funktion einer API-Klasse.
Dieser übergebe ich einen Parameter. Dieser Parameter ist ein Pointer auf einen int-Wert.Die Funktion macht folgendes:
Sie scannt nach bestimmten servern in einem netzwerk
und der Variablen wird die Anzahl der gefundenen Server übergeben.
Jedoch habe ich das Problem, dass die Variable nicht inkrementiert wird, sondern diese bleibt auf '1' stehen sobald EIN Server gefunden wurde.
Liegt möglicherweise an einem programmierfehler meinerseits(?).
Dies ist die Kunktion:
Servers(flCtrl, achServerNames, sizeof(achServerNames), &nNumberOfServers);Der Returnwert kann nur zur Fehleranalyse verwendet werden.
Es geht um die Variable 'nNumberOfServers' (unsigned int)Wie kann man das lösen?
Für ein paar Zeilen Code wäre ich dankbar, da ich mich noch nicht sehr lange mit c++ beschäftige.
Danke für deine / eure Hilfe
-
da steht nur die Funktionsdeklaration, nicht die Definition, für Fehlersuche wäre aber die eigentliche Funktion ganz gut^^

-
API int APIENTRY Servers(unsigned long flCtrl, char *pszServer,
unsigned int cbServer, unsigned int *pnNumberOfServers);Weiter geht das nicht... echt, das is ja das problem.
-
Warum sollte sie auch inkrementiert werden? Wie Du so schön gesagt hast, sie liefert 1 zurück, wenn EIN Server gefunden wurde... klingt doch völlig korrekt.
Btw, sizeof(achServerNames) geht nur, wenn achServerNames ein Array mit fester größe ist.