Funktionsaufruf!! Was mache ich falsch??



  • Hallo,

    ich würde gerne die Funktion nvramGetSerialNumber(TCHAR *szStr) einsetzen.

    Nach dem Übergabe der TCHAR Adresse an der Funktion, will ich den Inhalt der serialNumber, aber serialNumber ist nur 0 !!

    Was mache ich hier falsch?? Vielleicht caste ich falsch (unsigned short to int)??

    Ich brauche das Ergebnis als int Typ, deshalb Typecasting!

    Vielen Dank im **Voraus 😉

    int getSerialNumber()
    {
    // TCHAR ist unsigned short

    TCHAR serialNumber;

    return (int)(nvramGetSerialNumber(&serialNumber) ? :FALSE);
    }

    Hier ist die Funktionsbeschreibung:

    Description

    These functions are used to read the unique, fex21, 10 character, unit serial number
    string.

    ISISAPI BOOL APIENTRY nvramGetSerialNumber(TCHAR szStr);
    ISISAPI BOOL APIENTRY nvramGetSerialNumber(TCHAR
    szStr);

    szStr Unicode string large enough to hold 10 characters plus a terminating NULL.

    Return Value
    If the function call is successful, the function returns TRUE. Otherwise it returns FALSE
    and the content of any parameters will remain unchanged.**



  • int getSerialNumber() {
       TCHAR serialNumber[12];
       nvramGetSerialNumber(&serialNumber);
       return _ttoi(serialNumber);
    }
    

    Aber ich glaub nicht das int lang genug ist für 10 Ziffern. Am besten arbeitest du mit dem String (TCHAR), mit der Seriennummer musst du doch bestimmt nicht rechnen.



  • Ich bekomme leider die Fehlermeldung:

    cannot convert parameter 1 from 'unsigned short (*)[12]' to 'unsigned short *'

    int getSerialNumber()
    {
    TCHAR serialNumber[12];

    return int((nvramGetSerialNumber(&serialNumber) ? serialNumber:FALSE));
    }



  • sorry,

    nvramGetSerialNumber(serialNumber);

    ohne &



  • aber warum willst du die seriennummer in einer integer-variable haben? das ist doch total unnütz und wird nicht funktionieren!



  • Hi,

    Du hast recht 😉

    Ich wollte int Typ benutzen, da ich mit JNI Interface Programmiere. Ich rufe im Java Programm C Funktionen auf.
    Ich werde versuchen das Ergebnis in einem string zu konvertieren 😉

    Gruss Reza 🙂



  • das ergebnis ist ja schon in einem string! nur wie man das mit java macht hab ich auch keinen plan von 😉



  • Original erstellt von < >:
    das ergebnis ist ja schon in einem string! nur wie man das mit java macht hab ich auch keinen plan von 😉

    Hi,

    wie kann TCHAR ein string sein??
    Ich würde gerne wissen, wie TCHAR als string behandelt wird,
    da TCHAR ein unsigned short ist.

    Wie kann ich TCHAR in ein const char* konvertieren??

    Danke und Gruss Reza 🙂



  • Wenn TCHAR ein unsigned short * ist, dann kannst du das doch ganz normal casten, wo ist da das Problem? 😕


Anmelden zum Antworten