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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.07.2019, 17:28   #11
mihаli4
никакой
Пользователь
 
Аватар для mihаli4
 
Регистрация: 21.05.2018
Сообщений: 35
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Сейчас другой дурью мучаюсь: памяти у меня вагон, но сделать бы .exe в безотладочном варианте, компактно
ASPack вам в помощь

Последний раз редактировалось mihаli4; 13.07.2019 в 17:30.
mihаli4 вне форума Ответить с цитированием
Старый 13.07.2019, 19:29   #12
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Не знаю, к сожалению, что это за Шпак, но по логике штатными средствами компилятора должна быть возможность дебаг отключать.
Вот в книге "Трюки и эффекты Delphi" описано, как можно сделать компактный ехе-шник, но это трюкачество требует гибкой, не средней соображалки, а где уж ее...
digitalis вне форума Ответить с цитированием
Старый 13.07.2019, 21:18   #13
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Вопрос решен.
юзеру туда нельзя.. видимо токены нужно будет юзать
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 14.07.2019, 02:54   #14
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,859
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
но по логике штатными средствами компилятора должна быть возможность дебаг отключать.
По логике да. Но по бизнес-плану папаши Борланда не очевидно.

P.S. Компактный ехе-шник это не про Дельфи как не крути. Но объясни хотя бы зачем тебе приспичил "компактный ЕХЕ-шник?
northener вне форума Ответить с цитированием
Старый 14.07.2019, 12:13   #15
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Дык я же и говорю:
Цитата:
Сообщение от digitalis Посмотреть сообщение
Сейчас другой дурью мучаюсь:

Выросший в голодные послевоенные годы - привык к "жастачайшай", как говорит наш ПЖ, экономии. Иногда тюкнет в бошку: как же так, на СМ-4 в несколько десятков килобайт получалась оочень серьезный программный комплекс для контроля всякой армейской хрени, а тут одна кнопка, один лейбл - 300k.
Ну да ладно. Другое время - другие песни. Примем как данность и выключим хотелку.

Последний раз редактировалось digitalis; 14.07.2019 в 15:09.
digitalis вне форума Ответить с цитированием
Старый 22.07.2019, 12:20   #16
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

Помню, 10 лет назад качал какую-то разновидность ассеблера, где WinAPI искаропки юзалось. Там подобная программа занимала бы килобайт 5-6
BLACK_RAIN вне форума Ответить с цитированием
Старый 23.07.2019, 01:53   #17
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,859
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
Помню, 10 лет назад качал какую-то разновидность ассеблера
На любой версии ассемблера такой результат можно получить. Только этот результат получишь уже в районе пенсии потратив лучшие годы на фигню.
И перестаньте наконец искать волшебные палочки!
northener вне форума Ответить с цитированием
Старый 23.07.2019, 07:47   #18
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,453
По умолчанию

Код:
private
    { Private declarations }
        procedure WMGetSysCommand(var message : TMessage);
       message WM_SYSCOMMAND;
  public
    { Public declarations }
  end;
Перехват нажатия на системные кнопки формы (закрытие)
Код:
procedure TForm1.WMGetSysCommand(var message : TMessage) ;
begin
  if (message.wParam = SC_CLOSE) then
  else
    inherited;
end;
или так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  SysMenu: HMenu;
begin
  SysMenu := GetSystemMenu(Handle, False);
  Windows.EnableMenuItem(SysMenu, SC_CLOSE, MF_DISABLED or MF_GRAYED);
end;
Цитата:
Сообщение от digitalis Посмотреть сообщение
не помогло, размер не уменьшился
UPX 308w.rar
Вложения
Тип файла: rar UPX 308w.rar (340.0 Кб, 9 просмотров)

Последний раз редактировалось beegl; 23.07.2019 в 07:53.
beegl вне форума Ответить с цитированием
Старый 23.07.2019, 09:56   #19
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
И перестаньте наконец искать волшебные палочки!
Согласитесь, что ЕХЕ'шник в полтора мегабайта для программы с одной кнопкой - это не рационально.
Такое надо писать на WinAPI. А еще лучше - на WinAPI на чистом С. Это не так сложно, как на ассемблере. Для программы с одной кнопой - самое то.
BLACK_RAIN вне форума Ответить с цитированием
Старый 23.07.2019, 10:10   #20
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
Согласитесь, что ЕХЕ'шник в полтора мегабайта для программы с одной кнопкой - это не рационально.
нерационально искать проблемы там, где их нет.
Какая Вам разница, 1 мегабайт EXEшник или 10 Мб, если он решает поставленную задачу. (ведь при нажатии на кнопку он что-то делает, нет?).
Да, можно написать на чистом WinAPI, будет меньше. Времени у Вас это займёт столько же, сколько на многомегабайтный файл? Тогда пишите на WinAPI и пусть все остальные обзавидуются.
Просто, пока Вы будете писать один файл с одной кнопкой, кто-то набросает на форму десяток кнопок, табконтролы, мемо, гриды и прочую визуальщину.
И, что характерно, EXEшник в размере вырастет процентов на 5% (потому что уже все нужные библиотеки подтянулись в состав EXE, когда Вы туда одну кнопку вставили). А Вы в это время ещё будете размещать одну кнопку на WinAPI

поймите, что мегабайты/гигабайты/петабайты стоят несравнимо дешевле, чем время программиста. Вот исходя из этого и пляшите.

p.s. меня тоже бесит, когда какая-нибудь простейшая программа занимает десятки (а то и сотни) мегабайт - но такова се ля ви.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Убрать папки "Pictures", "Music", "Видео", "Downloads" из "МОЙ КОМПЬЮТЕР" Бахтиёр1916 Windows 1 05.04.2017 12:53
Нужно пояснить/прокомментировать код программы, или коды функций "Добавить" "Удалить" "Обновить(редактировать" "Поиск" "Период") ZIRASS PHP 4 15.06.2016 14:23
Крестик закрытия программы skanku C++ Builder 1 26.05.2012 08:12
Деактивировать "Крестик" в GetOpenFile Klim Bassenger Microsoft Office Excel 6 30.04.2009 11:20