Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2007, 06:07   #1
ZaNOZA
Новичок
Джуниор
 
Регистрация: 08.01.2007
Сообщений: 2
Вопрос обнаружена ошибка. Приложение будет закрыто. Кто поможет??

Пишу я разные ненужные програмки (опыта набираюсь) и решил написать такую весчь:
Написал типа SFX модуля прогу. К ней приклеивается зашифрованный файл. получается такая смесь:
1. SFX.EXE Файл = размер файла
2. Пароль = 5 байт
3. Длинна имени файла = 2 байта
4. Имя файла(Зашифрованного) = "Длинна имени файла" байт
5. Содержание зашифрованного файла = до конца.

Все это пишется последовательно в файл, Получается EXE файл
который должен командой ReadFile прочитать(точнее пропустить) себя
потом прочитать пароль, размер имени зашифрованного файла,
само имя файла, после этого выдать SaveDialog1 для сохранения файла, и сохранить файл в указанное место(Расшифровав).

Написал програмку (FileMonger) для склеивания этих данных(SFX/pass/FileName) - Работает нормально, а вот при запуске склеенного SFX.EXE он(sfx.exe=>out.exe)вылетает когда пытается сделать SaveDialog1.Execute ! Исходник прилагается! Кстати я все это делаю в отдельном потоке(BeginThread), Может в этом проблема??
Отдельно файл sfx.exe с прикрученым OpenDialog1 Работает! а как нада не хочет. Кому не лень посмотрите пожалуста исходник. sfx.exe нада скопировать в папку Filemonger. Помоготе кто может!!
Вложения
Тип файла: rar Export.rar (86.9 Кб, 17 просмотров)
ZaNOZA вне форума Ответить с цитированием
Старый 10.01.2007, 20:18   #2
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

вытащить один файл из себя можно и без потока
по нормально делают: сначала сейвдиалог потом только чтение из себя и сохранение
OpenDialog лучше из потока не вызывать если ты поток не синхронизируешь то в потоке можно вызывать только API

Последний раз редактировалось rpy3uH; 10.01.2007 в 20:28.
rpy3uH вне форума Ответить с цитированием
Старый 12.01.2007, 04:19   #3
ZaNOZA
Новичок
Джуниор
 
Регистрация: 08.01.2007
Сообщений: 2
По умолчанию

Цитата:
Сообщение от rpy3uH Посмотреть сообщение
вытащить один файл из себя можно и без потока
по нормально делают: сначала сейвдиалог потом только чтение из себя и сохранение
А как же я вызову сейвдиалог если не знаю имени и типа файла ?
ZaNOZA вне форума Ответить с цитированием
Старый 13.01.2007, 11:03   #4
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

Короче проще делать такую фигню без потока
rpy3uH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто поможет??? sashahttp Общие вопросы Delphi 1 24.06.2008 09:15
Microsoft Office Outlook - обнаружена ошибка. Приложение будет закрыто. Приносим извинения за неудобства Дмитрий1978 Софт 0 10.11.2007 15:56
Скажите функцию которая будет запускать приложение при каждой загрузке винды pentiumForever Общие вопросы Delphi 9 08.09.2007 01:54