Hvordan gæmmer man

Tags:    c++ diverse

User
Bruger #527 @ 05.07.02 10:55
Hej jeg har 5 variabler som skal kunde gæmes;
Sådan at næste gang programet startes op hosker det de sidste indstillinger

der må være en eller anden simpel måde at geme sådan en simpel ARRAY på.

ComPort1->DeviceName=VARI[1];

ComPort1->BaudRate=VARI[2];
COM_SPED2->Checked=VARI[3];
COM_SPED1->Checked=VARI[4];
ComPort1->Active = VARI[5];



Kim



2 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
User
Bruger #24 @ 05.07.02 14:36
Jeg ville nok gemme det i en struktur.. (eller en klasse hvis det er c++)

typedef struct
{
unsigned char DeviceName __attrib__((packed));
unsigned char BaudRate __attrib__((packed));
unsigned char Checked __attrib__((packed));
unsigned char Active __attrib__((packed));
}ComPort;

eller noget lign...

det kan du hente og gemme i een linie..

ComPort Com1;

fread(&Com1,sizeof(ComPort),1,fp);

eller skrive

fwrite(&Com1,sizeof(ComPort),1,fp);

håber det kunne bruges...

go' weekend



Hej jeg har 5 variabler som skal kunde gæmes;
Sådan at næste gang programet startes op hosker det de sidste indstillinger

der må være en eller anden simpel måde at geme sådan en simpel ARRAY på.

ComPort1->DeviceName=VARI[1];

ComPort1->BaudRate=VARI[2];
COM_SPED2->Checked=VARI[3];
COM_SPED1->Checked=VARI[4];
ComPort1->Active = VARI[5];



Kim


Hej Kim

2 måde, den ene er en ini-fil. Som er en filtype Windows bruger til opsætninger. Den anden måde er at gemme det i Windows registrerings database.
Den føste måde:

Lave en fil, med navnet f.eks: Serial.ini
Dens struktur:

[Settings]
Port = COM1
Baudrate = 9600
osv.

Via nogle API komandoer kan man nu læse og skrive i filen.

WORD GetPrivateProfileString(

LPCTSTR lpAppName, // Her skrives overskriften "Settings"
LPCTSTR lpKeyName, // Nøglen, "Port"
LPCTSTR lpDefault, // Streng med default data. Bruges hvis Nøgle ikke findes
LPTSTR lpReturnedString, // &cData[0], returdata fra filen
DWORD nSize, // Størrelse på returdata, sizeof(cData)
LPCTSTR lpFileName // Filenavnet, "C:\\\\App\\\\Serial.ini"
);

BOOL WritePrivateProfileString(

LPCTSTR lpAppName, // Her skrives overskriften "Settings"
LPCTSTR lpKeyName, // Nøglen, "Port"
LPCTSTR lpString, // Data, "9600"
LPCTSTR lpFileName // Filenavnet, "C:\\\\App\\\\Serial.ini"
);

Denne metode kan bruges, men flere og flere går over til at bruge registrerings databasen, da denne har nogle fordele, så som, en bestem bruger [Logon] kan medtage sine egne indstillinger fra registrerings databasen, med mellem forskellige PC'er.

Der er en del API funktioner til registrerings databasen. Så den er til at gå til. Ellers er du velkommen til at skrive til mig.

Med venlig hilsen
Thomas Vanting





t