Ip Helper Api Problem



  • Cefour schrieb:

    was aber nicht sein kann

    Das ist aber so. Das, was Du als ersten Parameter in die Funktion hineingibst, ist halt kein LPWSTR, sondern nur LPSTR. Sei froh, daß Du wenigstens einen Fehler bekommst und das nicht gleich die ganze Anwendung abschmiert.

    Ein Cast konvertiert halt nichts. Ein Cast ist lediglich der Hinweis darauf, daß Du schlauer als der Compiler bist (was in diesem Fall nicht zutrifft). Ein Cast konvertiert aber garantiert nicht Daten von einem Format ins Andere, das mußt Du selbst erledigen. In Deinem Fall kann das mit der MultiByteToWideChar-Funktion passieren.

    Und das nächste mal bekommst Du bei solchen merkwürdigen Casts bitte gleich selber Flecken und machst die von selbst da wech.



  • So ich habe es gemacht wie Gästchen vorgeschlagen hat funktioniert immer nocht nicht
    Die Fehlermeldung ist immer noch die gleiche!!!!

    int main()
    {
    	IP_ADAPTER_INFO AdapterInfo[16];            
        DWORD dwBufLen = sizeof(AdapterInfo);       
    
        DWORD dwStatus = GetAdaptersInfo(            
                     AdapterInfo,                          
                      &dwBufLen); 
    
    	PIP_ADAPTER_INFO pAdapter = AdapterInfo;
    	DWORD index = 0;
    	WCHAR ada[200];
    	MultiByteToWideChar(CP_ACP,0,pAdapter->AdapterName,-1,ada,sizeof(ada));
    
    	DWORD du = GetAdapterIndex(ada,&index);
    
    	printf("Erneuern der Ip Adresse\n");
    
    	AddIPAddress(inet_addr("192.168.0.40"),inet_addr("255.255.255.0"),index,NULL,NULL);
    
        LPVOID lpMsgBuf;
    	FormatMessage( 
        FORMAT_MESSAGE_ALLOCATE_BUFFER | 
        FORMAT_MESSAGE_FROM_SYSTEM | 
        FORMAT_MESSAGE_IGNORE_INSERTS,
        NULL,
        du,
        MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
        (LPTSTR) &lpMsgBuf,
        0,
        NULL );
    
    	printf("%s",(char*)lpMsgBuf);
    
    	system("pause");
    	return 0;
    }
    


  • Dann geht es halt immer noch nicht. Aber was ist überhaupt der Sinn von GetAdapterIndex, warum nimmst Du nicht einfach gleich pAdapter->Index?



  • Weil ich wenn ich
    das so mache

    AddIPAddress(inet_addr("192.168.0.40"),inet_addr("255.255.255.0"),pAdapter->Index
    		                       ,NULL,NULL);
    

    Die Fehlermeldung bekomme Falscher Parameter



  • Nach meiner Dokumentation sind die letzten beiden Parameter tatsächlich falsch, da hat die Funktion also recht.



  • @Gästchen:

    Cefour schrieb:

    So ich habe es gemacht wie Gästchen vorgeschlagen hat funktioniert immer nocht nicht Die Fehlermeldung ist immer noch die gleiche!!!!

    LOOOOL, vllt mal lieber die Fresse halten, wer hat hier keine Ahnung 😃 😃 ? ...:

    Gästchen schrieb:

    Gästchen schrieb:

    CodeFinder schrieb:

    Nur zu dumm, dass es das bei Executeables gar nicht gibt 👎 .

    Schwachfug. Das gibt es natürlich auch bei Executables. Alles was Du brauchst ist NTFS. Bevor Du solchen Quatschkram behauptest, solltest Du das mal ausprobieren!

    Man man, wie blöd seid Ihr eigentlich? Ebenfalls 👎



  • So ist es auch möglich mir mal ein bisschen hilfe zu geben!!!!!!!!!!
    Wäre euch echt verbunden



  • Hm...aber geh die Sache mal anders ran:
    Mal angenommen, das hier stimmt:

    Die Fehlermeldung ist: Die Angegebene Netzwerkresource bzw. das angegebene Gerät ist nicht verfügbar

    Dann versuch doch mal n anderen Adapter...



  • sag mal Cefour bist du dumm? die letzten beiden parameter sind out-Parameter! da muss du eine vernünftige adresse übergeben und nicht NULL.



  • helper schrieb:

    sag mal Cefour bist du dumm? die letzten beiden parameter sind out-Parameter! da muss du eine vernünftige adresse übergeben und nicht NULL.

    Das stimmt zwar, aber in erste Linie gehts es darum:

    Cefour schrieb:

    Die GetAdapterIndex läuft hier schief !

    Die Fehlermeldung ist: Die Angegebene Netzwerkresource bzw. das angegebene Gerät ist nicht verfügbar

    was aber nicht sein kann
    Wenn ich vorher alles Abfrage habe ich eine Beschreibung, einen Adapter Namen usw..

    Ich hoffer ihr könnt mir helfen



  • @helper
    ich bin weder dumm noch beschränkt um deine Frage zu beantworten.

    @all ich habe das Problem selbst beseitigt

    Aber eins muss ich leider sagen die Board hat leider nicht mehr den Flair wie es einmall hatte. Man wird hier beleidigt von Leuten die überhaubt nix drauf haben.



  • Cefour schrieb:

    @all ich habe das Problem selbst beseitigt

    Sagst du uns auch wie 🙄 ...

    Cefour schrieb:

    Aber eins muss ich leider sagen die Board hat leider nicht mehr den Flair wie es einmall hatte. Man wird hier beleidigt von Leuten die überhaubt nix drauf haben.

    Jo das liegt wohl an den ungereggten Trolls... 😞



  • Cefour schrieb:

    @all ich habe das Problem selbst beseitigt

    warum sagst du dann nicht wie du es gemacht hast?



  • @helper: Warum müssen mich eigentlich alle immer wiederholen ?! ...Doppelt gemoppelt hält besser...oder wie?!



  • schaumal in dein anderen thread


Anmelden zum Antworten