NetShareAdd() konvertierungsproblem



  • also da das problem mit der header datei endlcih gelößt is steh ich schon wieder an (ich glaub ich sollte mir langsam ein anderes hobby suchen^^)

    #include <iostream>
    #include <windows.h>
    #include <lm.h>
    using namespace std;
    
    int main()
    {
    	SHARE_INFO_2 buffer;
    	buffer.shi2_netname = "test";
    	buffer.shi2_type = STYPE_DISKTREE;
    	buffer.shi2_path = "C:\\";
    	buffer.shi2_permissions = ACCESS_ALL;
    	buffer.shi2_remark = "go";
    	buffer.shi2_current_uses = 12;
    	buffer.shi2_max_uses = 20;
    	buffer.shi2_passwd = "shit";
    
    	NetShareAdd(NULL, (DWORD)2, buffer, NULL);
    
    	getchar();
    	return 0;
    }
    

    es kommt die fehlermeldung:
    --------------------Konfiguration: test - Win32 Debug--------------------
    Kompilierung läuft...
    test.cpp
    C:\Dokumente und Einstellungen\Administrator\Desktop\test\asdf.cpp(18) : error C2664: 'NetShareAdd' : Konvertierung des Parameters 3 von 'struct _SHARE_INFO_2' in 'unsigned char *' nicht moeglich
    Kein benutzerdefinierter Konvertierungsoperator verfuegbar, der diese Konvertierung durchfuehren kann, oder der Operator kann nicht aufgerufen werden
    Fehler beim Ausführen von cl.exe.

    test.exe - 1 Fehler, 0 Warnung(en)

    ich benutze visual c++ 6
    und win2k

    vielleicht kan mir einer helfen

    mfg killakathl



  • casten!

    warum castest du überhaupt 2 nach DWORD? das für ein schwachsinn 🤡



  • adressoperator fehlt 😉
    [cpp]NetShareAdd(NULL, (DWORD)2, **&**buffer, NULL);[/cpp]



  • uiii danke^^ *freu*

    @ ???????????? schau mal in die referenz vielleicht siehst du dann warum ich caste 😉

    mfg killakathl



  • wart mal nix uiii danke gg

    das geht noch immer net!!!:

    --------------------Konfiguration: test - Win32 Debug--------------------
    Kompilierung läuft...
    test.cpp
    C:\Dokumente und Einstellungen\Administrator\Desktop\test\asdf.cpp(18) : error C2664: 'NetShareAdd' : Konvertierung des Parameters 3 von 'struct _SHARE_INFO_2 *' in 'unsigned char *' nicht moeglich
    Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
    Fehler beim Ausführen von cl.exe.

    test.exe - 1 Fehler, 0 Warnung(en)

    mfg killakathl



  • Caste mal lieber **&**buffer nach LPBYTE. 🙂

    schau mal in die referenz vielleicht siehst du dann warum ich caste

    Ich habe in die Referenz geschaut und verstehe es nicht. 😞
    Im Code-Beispiel in der Referenz ist an dieser Stelle auch kein Cast.



  • looool jetz gehts gg danke

    mfg killakathl


Anmelden zum Antworten