проблемы с ReadFile

Discussion in 'WASM.BEGINNERS' started by satti, Nov 11, 2010.

  1. satti

    satti New Member

    Blog Posts:
    0
    ReadFile в некоторых файлах (не нулевого размера), не читает в dwCut (__int32), только обнуляет его, файлы спокойно открываются Блокнотом, и в начале никаких нулей. Никаких ошибок не происходит, не при открытии файла, не при чтении... Кусок кода ниже.
    Code (Text):
    1. char szTemp[65535];
    2. unsigned __int32 dwCut;
    3. HANDLE hFile;
    4. DWORD iFile;
    5. BOOL xyu;
    6.  
    7. hFile = CreateFileA(szTemp, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, NULL, NULL);
    8. if (hFile == INVALID_HANDLE_VALUE) {
    9.     printf("@@ %s", szTemp);
    10. }
    11. xyu = ReadFile(hFile, &dwCut, sizeof(__int32), &iFile, 0);
    12. if (xyu == 0) {
    13.     printf("@@ %s", szTemp);
    14. }
    15. CloseHandle(hFile);
    P. S. Пользовал поиск по форуму и гуглу безрезультатно...
     
  2. leo

    leo Active Member

    Blog Posts:
    0
    Что за изврат - юзать FILE_READ_DATA без\вместо GENERIC_READ ?!
     
  3. satti

    satti New Member

    Blog Posts:
    0
    Да перебирал, разные флаги... GENERIC_READ или FILE_READ_DATA результат один и тот же... Остатки экспериментов.
     
  4. MSoft

    MSoft New Member

    Blog Posts:
    0
    ну если там в начале нули, то блокнот этого не покажет. Попробуй проверить файл хекс-редактором
     
  5. PSR1257

    PSR1257 New Member

    Blog Posts:
    0
    satti

    Посмотри что сгенерировано в ассемблерном листинге. Имхо нада &dwCut.
     
  6. MSoft

    MSoft New Member

    Blog Posts:
    0
    кстати, амперсанд забыл перед dwCut
     
  7. satti

    satti New Member

    Blog Posts:
    0
    MSoft
    В Total Commander уже смотрел в Lister'e в шестнадцатеричном виде...

    MSoft, PSR1257
    В сорце есть, просто переименовывал переменные для "понятности" и забыл поставить...
     
  8. MSoft

    MSoft New Member

    Blog Posts:
    0
    Так не бывает. Ты в отладчике смотрел код? Чему равен hFile? Точно не ошибке? Т.к. ты только сообщение выводишь, но чтение все равно пытаешься выполнить. Что вернуло ReadFile? Чему равен iFile после чтения?
     
  9. satti

    satti New Member

    Blog Posts:
    0
    MSoft, PSR1257, leo
    Спасибо. Разобрался. Извините, за тупость (