Avatar billede uffe_kld Nybegynder
01. maj 2000 - 16:30 Der er 3 kommentarer og
1 løsning

Prefetch Abort

Når jeg debugger nedenstående kode får jeg følgende fejlmedddelse efter den sidste }.
---------------
Prefetch Abort: Thread=88f5aa68 Proc=8807ec38 'ADODEMO.exe'
AKY=00000401 PC=0069004c RA=8003ea84 BVA=0069004c
First-chance exception in ADODEMO.exe: 0xC0000005: Access Violation.
-------------
test returnere 0 som den skal
funktion skal gemme instillingen af 2 listviews i registryen, hvilket den også gør.

Men hvorfor kommer den med den fejlmeddelse.


LPARAM DoMainCommandSaveSettings (HWND hWnd, WORD idItem, HWND hwndCtl,
                                WORD wNotifyCode) {


    HKEY        hKey;
    DWORD        BufferSize ;
    LPLVCOLUMN  pCol;
    LVCOLUMN    Col;
    HWND        hwndLV;
    int         i = 0;
    Columns        RegStruct [15];
    bool        openReg = false;
    long        test;

    pCol = &Col;

    hwndLV = GetDlgItem (hMain, IDC_LISTVCOMPANY);

    Col.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_FMT | LVCF_SUBITEM;
    while (ListView_GetColumn(hwndLV,i,pCol)){
        RegStruct [i].mask= pCol->mask;       
        RegStruct [i].fmt= pCol->fmt;       
        RegStruct [i].cx =pCol->cx;
        _tcscpy(RegStruct [i].pszText,(LPTSTR)(pCol->pszText));
        RegStruct [i].iSubItem= pCol->iSubItem;       
        RegStruct [i].dbFelt= lvCompColumns[i].dbFelt;       
        i++;
        Col.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_FMT | LVCF_SUBITEM;

    }


    BufferSize = i*80;
       

    if (RegOpenKeyEx (HKEY_LOCAL_MACHINE,TEXT("Software\\Sam-X"),  0, KEY_ALL_ACCESS, &hKey) == ERROR_SUCCESS)
    {
        openReg = true;       
        test = RegSetValueEx(hKey,_T("CompColumns"),NULL,REG_BINARY,(LPBYTE)RegStruct, BufferSize);
        test = RegSetValueEx(hKey,_T("CompCount"),NULL,REG_DWORD,(LPBYTE)&i, 4);
    }


    hwndLV = GetDlgItem (hMain, IDC_LISTVNOTES);
    i = 0;

    while (ListView_GetColumn(hwndLV,i,pCol)){
        RegStruct [i].mask= pCol->mask;       
        RegStruct [i].fmt= pCol->fmt;       
        RegStruct [i].cx =pCol->cx;
        _tcscpy(RegStruct [i].pszText,(LPTSTR)(pCol->pszText));
        RegStruct [i].iSubItem= pCol->iSubItem;       
        RegStruct [i].dbFelt= lvNotesColumns[i].dbFelt;       
        i++;
        Col.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_FMT | LVCF_SUBITEM;

    }

    BufferSize = i*80;

    if (openReg) {

        test = RegSetValueEx(hKey,_T("NotesColumns"),NULL,REG_BINARY,(LPBYTE)RegStruct, BufferSize);
        test = RegSetValueEx(hKey,_T("NotesCount"),NULL,REG_DWORD,(LPBYTE)&i, 4);
        test = RegCloseKey (hKey);
    }
    return 0;
}
Avatar billede soepro Nybegynder
02. maj 2000 - 10:57 #1
Mangler du ikke '&' på 'hKey' i 'RegCloseKey' ??? Det skal jo være adressen på arealet der indeholder key til registry'en - ikke de første 4 bytes (længden af en 32-bit pointer) af indholdet.
Avatar billede uffe_kld Nybegynder
03. maj 2000 - 18:57 #2
Der går lige en par dage, inden jeg får tid til at arbejde videre med mit projek, men jeg skal nok vende tilbage.
Avatar billede uffe_kld Nybegynder
08. maj 2000 - 13:16 #3
Jeg arbejder ikke mere på projektet, så jeg få det det ikke afprøvet, men her pointene alligevel
Avatar billede soepro Nybegynder
08. maj 2000 - 14:28 #4
Jeg bukker & takker.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester