2 вопроса средней глупости по 12 уроку Iczelionа

Тема в разделе "WASM.BEGINNERS", создана пользователем Veter, 18 янв 2007.

  1. Veter

    Veter New Member

    Публикаций:
    0
    Регистрация:
    23 дек 2006
    Сообщения:
    161
    Привет

    1. При открытии файлов больше 20 килобайт, прграмма начинает ощутимо тормозить. Больше 30 - перестают работать все клавиши ,кроме бэкспэйса... Что-бы это значило и как с этим бороться?
    Да, еще - при открытии больших файлов - зависает диалоговое окно .
    Если не трудно - подскажите , как увеличить буфер? Iczelion пишет,что нужно не забывать резервировать столько места в буфере,сколько может понадобиться,но как это сделать :dntknw:

    Пробовал вставить эдит в 13 урок - так и не смог заставить его работать,почему-то,хотя MapFile создается ... и не совсем ясно,что хотел сказать Iczelion - размер MapFile изменить нельзя,значит это не годится для работы с текстовыми файлами?


    2.Все примеры - сохраняют файлы неизвестной ориентаци,так сказать...
    Понятно,что к имени файла нужно присоединить расширение.
    Ни один из примеров не может этого делать,соответсвенно - и я не могу . Буду благодарен за помощь в этом вопросе...
     
  2. Denis__

    Denis__ New Member

    Публикаций:
    0
    Регистрация:
    5 янв 2006
    Сообщения:
    56
    Код (Text):
    1. .data
    2. MEMSIZE dd 0
    3. .code
    4. invoke GetOpenFileName, ADDR ofn
    5. .if eax==TRUE
    6. invoke CreateFile,ADDR buffer,GENERIC_READ or GENERIC_WRITE ,FILE_SHARE_READ or FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,NULL
    7. mov hFile,eax
    8. invoke GetFileSize,hFile,0             ;получаем размер файла
    9. mov MEMSIZE,eax
    10. invoke GlobalAlloc,GMEM_MOVEABLE or GMEM_ZEROINIT,MEMSIZE
    11. mov  hMemory,eax
    12. invoke GlobalLock,hMemory
    13. mov  pMemory,eax
    14. invoke ReadFile,hFile,pMemory,MEMSIZE,offset SizeReadWrite,NULL
    В общем получаем размер файла, функцией GetFileSize. Дальше я думаю все ясно,все тоже самое.И при вызове ReadFile,пиши MEMSIZE, а не MEMSIZE-1.
     
  3. Veter

    Veter New Member

    Публикаций:
    0
    Регистрация:
    23 дек 2006
    Сообщения:
    161
    то-же самое,пока . Надо еще почитать теорию наверное и поэкспериментировать... Очень странные открытия делаются иногда, если применять метод "Монте-Карло" ...
    А сейчас,открывает 30 килобайт - такое ощущение,что открыл WORDом 15 мгбт, а 40 - умирает вообще..., только читать разрешает.
    Правда у меня эдит навороченный,печатает на окне застеленном битмапом - может из-за этого?