![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| Valeria |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 16.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
вот теперь запускается, только окно совсем маленькое, и в нем печатается "ээээ",независимо от текста файла!
|
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
значит файл не открылся, или в командной строке путь с пробелами
-------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
Переправь WinMain и сообщение WM_CREATE
В WinMain я добавил обработку на ошибку открытия файла. Если файл не открывается, то в окошке будет печататься слово "ошибка!" В WM_CREATE - изменил DrawText на GetTextExtentPoint32. Тут еще дополнительно прямоугольник корректнее вычисляется, там все подписано. Чтобы "эээ" не было, глобальную lpszFirstFileString нужно инициализировать так при объявлении:
Глобально - это значит над WinMain, не внутри! А удалить её нужно перед командой return, только именно перед ней, не выше, иначе в момент, когда у тебя окошко покажется, строка уже будет удалена и ни чего, кроме "ээээ" ты не увидишь! Если это не понятно, то не удаляй lpszFirstFileString вообще, т.е. не вызывай delete[]lpszFirstFileString. Это сообщение отредактировал(а) GremlinProg - 20.5.2006, 13:15 -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Valeria |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 16.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
Про глобально - это я понимаю. По поводу delete[]lpszFirstFileString., то выдает ошибку,если написать эту строку. Без нее
запускается и пишет Ошибка!, значит файл не прочитать. А запускать надо с полным путем и в кавычках?Хотя я уже пробовала по-всякому, все равно ошибка. |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
lpCmdLine замени на __argv[1]
Добавлено @ 14:18 теперь просто брось любой текстовый файл на exe'шник, не обязательно с командной строки. -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Valeria |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 16.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
'WinMain' : function cannot be overloaded - не работает.
|
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
в lpCmdLine находится путь к файлу, только в двойных кавычках, поэтому CreateFile не понимает его, а в __argv[1] эти кавычки отсекаются и все работает
Добавлено @ 14:26 ты чего-то намудрила, не в параметрах функции lpCmdLine замени, а в вызове CreateFile:
Добавлено @ 14:28 в WinMain верни все обратно, как было: (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Valeria |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 16.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
я попробовала явно указать имя файла в функции Create, аналогично - ошибка.
Добавлено @ 14:37 вот, написала все также! все равно. |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
пропиши явно, только писать надо через двойной слеш: "C:\\Folder\\Program.exe"
-------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Valeria |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 16.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
ну я так и писала! ошибка!
|
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
боже ж ты мой
только что проверил - РАБОТАЕТ! -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Valeria |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 16.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
Благодарности нет предела!!!! GremlinProg, СПАСИБО ОГРОМНОЕ!!! Добавлено @ 15:02 Просто там с файлом было неправильно!Который читаю! Добавлено @ 15:09 Только теперь еще надо доделать,чтобы строка обрезалась,если она в окне не помещается. Это сообщение отредактировал(а) Valeria - 20.5.2006, 15:01 |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
это просто, посмотри, что я тут переделал:
-------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| Valeria |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 16.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
Здорово! а я почему-то стала переделывать вторую функцию!а там сразу возникли проблемы с локальными переменными (размерами окна),
короче ничего не получилось естественно. Спасибо тебе большое! Видимо, сильно я все забыла за 3 года, да в принципе и не особо я им занималась тогда. Только курсовые и лабораторные. |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
Ну, это не предел мечтаний, но сойдёть для начала. Незачто!
-------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |