Re[7]: Пределы глупости человеческой :)
От: CreatorCray  
Дата: 20.09.20 13:37
Оценка: +1
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Да, я уже задумывался, и пытался делать на фреймворках. Пока не понравился ни один. На WinAPI — просто писанина и лишний код, на фреймворках — или борьба с неочевидными косяками (MFC, WTL), или неадекватный размер бинарников (Qt).


При писанине на WinAPI сам собой формируется небольшой такой framework, который потом можно реюзать.

Я как то в стартапе за пару вечеров написал на WinAPI свой инсталлер, повторяющий MSI (WIX based) инсталлер по внешнему виду и той части функциональности что была нам надо (firewall config, services mgmt, drivers install/remove, custom binary actions) потому что WIX был просто pain in ass по части работы с external custom actions которые нам были нужны чтоб правильно поставить продукт.
Замечательно работал.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[8]: Пределы глупости человеческой :)
От: CreatorCray  
Дата: 20.09.20 13:37
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Подозреваю, что в установщик того драйвера напихали всякой дряни, чтобы смотрелось стильно-модно-молодежно, вот он и не взлетел в Safe Mode.

Не, там всё предельно просто, но MSI требует Windows Installer Service а тот при попытке запустить говорит что "в safe mode я не работаю". И всё.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[2]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 20.09.20 14:30
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Ну так ты поправил код-то, чтобы окно всегда влезало?


Я уменьшил высоту, чтоб влезало на 600 по вертикали.
Re[8]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 20.09.20 14:37
Оценка:
Здравствуйте, Shtole, Вы писали:

S>Какая часть вам кажется трудоёмкой? Спрашивайте, я подскажу. (Если вспомню, конечно). Фон -- WHITE_BRUSH в оконном классе. Тени -- 3 png. Кнопку нарисовать? OWNER_DRAW + png.


"Трудоемкой" — это не "придумать алгоритм" или "догадаться, какие функции использовать", а тупо кодить обработку всех вариантов всех сообщений и передачу данных между обработчиками. Не люблю такого кода, он развесистый и неочевидный.
Re[9]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 20.09.20 14:40
Оценка: +1
Здравствуйте, Shtole, Вы писали:

S>>>restore point надо создавать.


S>На самом же деле, юзер хочет видеть, куда ему откатываться, после установки следующей глючно-системной программы, которая этого НЕ сделала (на то она и глючная, хе-хе), чтобы потерять по минимуму установленного софта.


Если юзер этого хочет (и знает про Restore Points) — пусть создает их руками. Создавать их при установке безобидных программ в надежде, что следующей юзер поставит "глючно-системную" — явная глупость.
Re[8]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 20.09.20 14:45
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>При писанине на WinAPI сам собой формируется небольшой такой framework, который потом можно реюзать.


У меня пока не получилось такого, чтоб можно было реюзать без геморроя и значительного переписывания. Чтоб получилось, нужно делать нечто универсальное, типа мини-WTL, и при этом учесть известные проблемы известных фреймворков. Я не так много пишу для GUI, чтобы сформировалось понимание того, как это наперед сделать правильно.

CC>Я как то в стартапе за пару вечеров написал на WinAPI свой инсталлер, повторяющий MSI (WIX based) инсталлер по внешнему виду и той части функциональности что была нам надо (firewall config, services mgmt, drivers install/remove, custom binary actions)


За пару вечеров такое делается только в очень сыром и ненадежном виде, который затем приходится много где доделывать и переделывать.
Re[10]: Пределы глупости человеческой :)
От: Shtole  
Дата: 20.09.20 14:58
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:


S>>>>restore point надо создавать.


S>>На самом же деле, юзер хочет видеть, куда ему откатываться, после установки следующей глючно-системной программы, которая этого НЕ сделала (на то она и глючная, хе-хе), чтобы потерять по минимуму установленного софта.


ЕМ>Если юзер этого хочет (и знает про Restore Points) — пусть создает их руками. Создавать их при установке безобидных программ в надежде, что следующей юзер поставит "глючно-системную" — явная глупость.


Как вы любите пользователей!
Do you want to develop an app?
Re[11]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 20.09.20 15:49
Оценка:
Здравствуйте, Shtole, Вы писали:

S>Как вы любите пользователей!


Я люблю адекватных пользователей. Которые не ждут, что производитель софта их всячески оближет, и не поленятся время от времени нажать две кнопки вместо одной. С идеей "клиент всегда прав" — не ко мне.
Re[9]: Пределы глупости человеческой :)
От: CreatorCray  
Дата: 21.09.20 02:41
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>У меня пока не получилось такого, чтоб можно было реюзать без геморроя и значительного переписывания.

Да просто не надо изначально целиться на всемогутер.

ЕМ> Чтоб получилось, нужно делать нечто универсальное, типа мини-WTL, и при этом учесть известные проблемы известных фреймворков.

Такую цель ставить не надо, делать надо то, что лучше всего подходит под твои задачи, оставляя возможность для расширения по мере необходимости, но без фанатизма.

ЕМ>За пару вечеров такое делается только в очень сыром и ненадежном виде, который затем приходится много где доделывать и переделывать.

Зависит от опыта и наработок. Часть кода была взята из старых проектов, так что там больше времени заняло сделать FW чем имплементации его функций.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[3]: Пределы глупости человеческой :)
От: CreatorCray  
Дата: 21.09.20 02:41
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

Pzz>>Ну так ты поправил код-то, чтобы окно всегда влезало?

ЕМ>Я уменьшил высоту, чтоб влезало на 600 по вертикали.

Следующий юзер будет иметь 150% масштабирование в настройках и ой.
Эта задача в общем то не имеет красивого решения. Разишо вынести кнопку Accept на самый верх окна чтоб уж она то была видна всегда. Но это убого. Впрочем можно сделать 2 диалога — нормальный и для убогих и показывать второй если выясняется что первый на экран не помещается.
Но это опять таки работа которая не окупится.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[10]: Пределы глупости человеческой :)
От: Shtole  
Дата: 21.09.20 07:50
Оценка:
Здравствуйте, CreatorCray, Вы писали:

ЕМ>>У меня пока не получилось такого, чтоб можно было реюзать без геморроя и значительного переписывания.

CC>Да просто не надо изначально целиться на всемогутер.

Да в натуре. В контексте разговора об инсталляторах начать можно с DrawPng() и UnzipFiles().

Получается такая эклектичная свалка функций библиотека с очень большой реюзабельностью. Размер, в кои-то веки, значения не имеет, если линковать статически.

Что касается фреймворков, то IMHO их просто надо писать как таковые. Для нескольких команд, чей опыт обобщается, и только фреймворк. Разумеется, мало кто может себе это позволить.
Do you want to develop an app?
Re[4]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 23.09.20 07:23
Оценка:
Здравствуйте, CreatorCray, Вы писали:

ЕМ>>Я уменьшил высоту, чтоб влезало на 600 по вертикали.


CC>Следующий юзер будет иметь 150% масштабирование в настройках и ой.


На каком разрешении, и зачем? А главное — когда он будет, этот следующий? Первый, напомню, появился почти через год после увеличения размера окна, и разрешение у него было достаточное, но окно почему-то не центрировалось, а сам он не догадался его поднять. Сколько еще придется ждать такого уникального сочетания?

CC>Эта задача в общем то не имеет красивого решения.


Да и не надо.
Re[10]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 23.09.20 07:26
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>Часть кода была взята из старых проектов


Ну вот. У меня главная беда — нет никого сверху, кто заставлял бы делать проекты, в которые я сам не особо верю, и заодно их финансировал. А сам я не очень люблю писать код, который, скорее всего, не будет применяться регулярно. Обратная сторона такой практики — отсутствие объемной кодовой базы, из которой можно надергать кусков для нового проекта.
Re[5]: Пределы глупости человеческой :)
От: CreatorCray  
Дата: 23.09.20 07:48
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>На каком разрешении, и зачем?

На любом и потому что юзер — животинка резкая и непредсказуемая.

ЕМ> А главное — когда он будет, этот следующий?

Высока вероятность что примерно никогда.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[11]: Пределы глупости человеческой :)
От: CreatorCray  
Дата: 23.09.20 07:49
Оценка: 1 (1)
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>У меня главная беда — нет никого сверху, кто заставлял бы делать проекты, в которые я сам не особо верю

Я для себя сам делаю разное, для решения своих же задач да и порой так, проверить интересную идею, которое либо потом оседает в архивах либо в итоге пригождается и вырастает в что нить более полезное.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[12]: Пределы глупости человеческой :)
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 23.09.20 08:16
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>Я для себя сам делаю разное, для решения своих же задач да и порой так, проверить интересную идею, которое либо потом оседает в архивах либо в итоге пригождается и вырастает в что нить более полезное.


Мне на такое чаще всего жаль времени. Слишком много других нужных и интересных занятий, чтобы все время посвящать программированию.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.