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 shortTCHAR 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 konvertierenGruss 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 vonHi,
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?