Как иконки с файлов вытаскивать?

rid2000

субж...
Посоветуйте прогу...

tucha96

В FAQ этот вопрос подробно освещен.

1234554321

да почти как угодно: студия, микроангело, любой грабер ресурсов...

rid2000

Напиши пожалуйста на инглише названия пары(или одной) проги или расшарь, если есть...
Ты о какой студии? Визуал студии?

1234554321

да, об этой самой студии.

tucha96

Для того, чтобы ярлыки были разные, видимо.

abrek

а для чего придумали иконки прямо в исполняемые файлы пихать?
я раньше думал, что знаю, а сейчас вот задумался и понял, что нет

rid2000

Чтобы при переносе, иконки были теже...
Т.е. для удобства...

abrek

Может, и правда, допустим.
А зачем тогда продолжают использовать, сейчас ведь программы из одного файла не в моде?

Dasar

А какой смысл класть рядом?

abrek

Заменить легче

Dasar

ИМХО, авторы программы скорее всего подразумевают, что ты не будешь менять их иконку.
зы
хинт. Положить каждую строку, использующуюся в программе, в отдельный файл. Так проще будет проводить локализацию.
ззы
Я понял смысл.
Иконка маленькая по размеру, поэтому выгоднее ее хранить в самом exe-шнике.
Одним файлом она будет занимать целый кластер.

abrek

> ИМХО, авторы программы скорее всего подразумевают, что ты не будешь менять их иконку.
не верю. даже MS выпускает темы с разными наборами иконок.
> Положить каждую строку, использующуюся в программе, в отдельный файл. Так проще будет проводить локализацию.
IMHO, не проще: один файл проще перевести, чем много маленьких. Хотя разница небольшая и равна трём строчкам скрипта, который склеит/разрежет.
> Одним файлом она будет занимать целый кластер.
Это технические особенности конкретных ФС, и некоторые считают, что их надо устранять, а не приспосабливаться к ним.
В любом случае иконки и прочие эти "ресурсы" можно засунуть в архив стандартного формата, а не в исполняемый файл.

natali20

а чем исполняемый файл - не архив стандартного формата?

Dasar

> не верю. даже MS выпускает темы с разными наборами иконок.
с разными иконками для исполняемых файлов? Это для какой программы?
> В любом случае иконки и прочие эти "ресурсы" можно засунуть в архив стандартного формата, а не в исполняемый файл.
Структура ресурсов тоже тянет на стандарт. И то, что у пользователя не установлена программа для работы с этим стандартом, это уже больше похоже на проблемы самого пользователя.

abrek

В принципе архив, конечно.
Но менять его в целях настройки пользовательского рабочего места - как-то неаккуратно.
Пользователей бывает несколько - для каждого отдельную версию держать?
Ещё: программы, работающие с исполняемыми файлами, обычно относятся к инструментам разработчика, а не конечного пользователя - т.е. формат архива недостаточно стандартный, получается. Правда, AFAIK не во всех поддерживаемых в настоящий момент версиях Windows есть стандартный формат архивов.

kerkpirr

ну если прямо в файл пихают и другие ресурсы, типа картинок, то почему бы и иконки не класть туда же?

abrek

вот-вот
а зачем это всё туда кидают?

kerkpirr

для работы с ресурсами в файле есть функции в API, что удобно
если же ресурсы в архив класть, то уже надо реализовывать работу с этим архивом

abrek

> с разными иконками для исполняемых файлов? Это для какой программы?
Для всяких. Помню Microsoft Plus!
после него не очень интересовался

kerkpirr

к тому же при компиляции проги все ресурсы автоматом в файл помещаются, так что зачем что-то придумывать?

Dasar

ИМХО, пользователю надо менять иконку только в ярлыках (shortcuts так как именно shortcut-ы лежат в менюшках, desktop-е и т.д. А поменять иконку в ярлыке тебе и сейчас никто не мешает парой кликов.

Dasar

AFAIK, Microsoft Plus меняет только те иконки, что располагаются в менюшках и на desktop-е. А это и руками можно поменять.

1234554321

Сообщение удалил

tucha96

А где располагается иконка Сетевое Окружение?

Dasar

ну, уж "сетевое окружение" уж точно никакого отношения к исполняемым файлам не имеет.
1. "Сетевое окружение" - это расширение Explorer-а. А explorer к ос Windows имеет опосредованное отношение.
2. Данную иконку можно поменять через Desktop\Context Menu\Display\Effects\Settings.

abrek

Так что же получается? В меню показываются не те иконки, которые в исполняемом файле, а другие. Причём так с самого начала (уж точно при первом показе этого меню так?
Теперь вопрос: а зачем иконка в исполняемом файле, если практически сразу после инсталляции она (или даже не она?) копируется, и показываются уже иконки из другого источника (из ярлыков)?
А ещё, помню, кроме меню иконки есть в панеле задач или в трее, для выполняющихся приложений. Они откуда берутся?

natali20

Вот оттуда (в том числе) и берутся
ЗЫ У окон тоже иконки есть

abrek

IMHO тут перепутаны причина и следствия.
И фунции API, и средства сборки, пихающие ресурсы в исполняемые файлы, появились именно потому, что
1. кто-то придумал, что именно так и надо
2. остальные согласились, и продолжают соглашаться с каждым вызовом функции API, с каждым запуском линкера.

natali20

>2. остальные согласились, и продолжают соглашаться с каждым вызовом функции API, с каждым запуском линкера.
а ты, я вижу, ниибаца нонконформист
ЗЫ Никто же не заставляет пользоваться ресурсами. Но практика показывает, что это достаточно удобно.
Хочешь - загружай своё барахло из дополнительных файлов, но вот только что делать, если они пропотеряются / криворукий юзер их "поправит" - непонятно.

abrek

> а ты, я вижу, ниибаца нонконформист
про себя я пока ничего не говорил, хочется понять, почему другие так делают
пока что вышеупомянутое копирование иконок представляется мне костылём, помогающим обойти именно непригодность для использования иконок из исполняемого файла (а иначе зачем копировать?)
> но вот только что делать, если они пропотеряются
этот аргумент неприменим, если программа и так состоит более чем из одного исполняемого файла, да и в этом случае всё не так уж просто, исходя из сказанного в этой теме.
> криворукий юзер их "поправит"
от этого такими способами не защитишься, "поправить" можно любой файл

Dasar

Есть исполняемые файлы с иконками.
При создании shortcut-а на исполняемый файл: shortcut берет иконку из исполняемого файла.
В основном все это вызвано, конечно, историческми причинами.
1.исполняемые файлы запускались напрямую, через любой File-овый Manager. Для такого сценария удобно, когда программа выполнена в виде одного файла и снабжена иконкой.
2. Далее появляется explorer. Пользователь уже не запускает программы напрямую, а работает через explorer. Появляются shortcut-ы.
зы
Хоть Microsoft и пиняют за то, что она плохо поддерживает старые продукты.
Но на практике это одна из немногих компьютерных компаний, которая поддерживает свои старые наработки в течении 5 - 10 лет. Отсюда и берутся нестыковки.
> А ещё, помню, кроме меню иконки есть в панеле задач или в трее, для выполняющихся приложений. Они откуда берутся?
В панель задач идет та же иконка из исполняемого файла, но программа по желанию может ее поменять в процессе работы.
Иконка в Tray-е полность на совести самой программы.

natali20

>пока что вышеупомянутое копирование иконок представляется мне костылём, помогающим обойти именно непригодность для использования иконок из исполняемого файла (а иначе зачем копировать?)
мне слово "иконка" даже употреблять тут страшно, похоже, оно для кое-кого как красная тряпка для быка, гы-гы
>этот аргумент неприменим, если программа и так состоит более чем из одного исполняемого файла, да и в этом случае всё не так уж просто, исходя из сказанного в этой теме.
Не надо сравнивать. Типичный случай (с частотой, близкой к 100%) - программа состоит из исполняемого файла + энное кол-во библиотек, причём используется раннее связывание. В этом случае при утере файлов программа просто _не_будет_запущена_ на выполнение, и ничего страшного в этом нет. А вот что делать, если где-то в разгар процесса выяснится, что нужная строка / xml-схема / диалог куда-то делись - непонятно. В общем, разные это вещи.
>от этого такими способами не защитишься, "поправить" можно любой файл
можно, но для исправления exe нужен специальный (читай - девелоперский) инструмент
если твой формат будет защищён, то для него тоже что-то такое потребуется
а если это будет plain-текст, то тогда жди неприятностей
ЗЫ Иконки на рабочем столе, к которым ты прицепился, имеют к ресурсам очень и очень косвенное отношение. Забей.

abrek

> мне слово "иконка" даже употреблять тут страшно, похоже, оно для кое-кого как красная тряпка для быка,
не бойся, тебя не забодают
получается, что кроме лени (приводящей к автоматическому согласию с однажды кем-то принятым решением есть ещё мотив: уменьшение возможности настройки и модификации пользователями.
правильно понял?

abrek

> Хоть Microsoft и пиняют за то, что она плохо поддерживает старые продукты.
> Но на практике это одна из немногих компьютерных компаний, которая поддерживает свои старые наработки в течении 5 - 10 лет. Отсюда и берутся нестыковки.
Поддержка продуктов и поддержка своих наработок - разные вещи.
Первое нужно пользователям, а второе - своим разработчикам.

Dasar

свои продукты они тоже поддерживают

kerkpirr

ок. такой вопрос. чем тебе не нравиться наличие иконки в файле программы? и чем лучше, если бы она была во внешнем файле?

natali20

>получается, что кроме лени (приводящей к автоматическому согласию с однажды кем-то принятым решением)
есть некий унифицированный подход, (почти?) все (более-менее?) им довольны
а всякие сложные психологические, политические и т.д. факторы я не рюхаю
>уменьшение возможности настройки и модификации пользователями.
Отчасти, да.
С точностью до "взять редактор ресурсов". Это ведь совсем не сложно, не так ли?

1234554321

я правильно понял, что у тебя не QWERTY-раскладка?

abrek

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

kerkpirr

а зачем их менять в исполняемом файле?
иконка - это такая же часть программы, как и все остальное
и с чего это нужно позволять их менять у программы?
иконка - такая же часть оформления программы, как менюшки, картинки и т.п.

abrek

картинки (в том числе иконки) можно разделить на две категории
1. те, на которые никто смотреть не будет. они меня не интересуют, так как не нужны.
2. те, на которые кто-то будет смотреть (а значит, кто-то будет смотреть часто и подолгу, если пользователей много). так вот, разве странно, если кому-то из тех, кто будет смотреть, захочется их поменять, чтобы смотреть было приятнее?

Dasar

хм. На картинки и тексты в программе, а также на функции программы, пользователь еще чаще смотрит, чем на сами иконки.
зы
Где-то есть более удачное решение?

1234554321

если очень захочется, то ведь и при текущем положении дел поменяет, правда же?

abrek

про картинки я согласен, о чём уже написал
тексты - конечно должны настраиваться, хотя бы для локализации
функции и так обычно настраиваются в какой-то степени
более хорошее решение - посмотри на программы, для которых бывают "скины" или "темы"
картинки в отдельном файле/файлах, путь к файлу - в настройках

kerkpirr

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

JERRY

Мне, кажется, это следствие обычной мании Микрософт на все придумать свой формат, желательно бинарный при этом. А поскольку в Виндах ничего иначе не делается, то и аргументы возникают из серии "а нах менять, и так хорошо". Потом в микрософт придумывают специальные API или еще хуже технологии для работы с этим, программисты пишут программы, а пользователи их покупают и используют, чтобы сделать то, что в ином случае могли бы сделать в любом текстовом редакторе. В результате все при делах.

abrek

Прям-таки заговор. Обидели тебя, что ли?
Вроде всё ясно. Ресурсы в исполняемых файлах придумали в незапамятные времена, когда программы состояли из одного файла, а локализация была не в моде, в рамках культуры, где модифицировать поведение программы - дело исключительно разработчиков.
Почему продолжают использовать - тоже вроде прояснилось в ходе обсуждения.

JERRY

Почему заговор - объективная картина мира. А психологические изыскания оставь специалистам, непрофессионалам я не доверяю.
А кто прививал такую культуру? Насчет программы из одного файла нужно отдельно выяснить. Как давно под Виндами появились инсталяторы?

Dasar

Нормальная поддержка инсталляторов появилась недавно.
зы
Для небольших программ инсталлятор нужен только для того, чтобы создать ярлык в меню. Без чего как бы можно и обойтись.
ззы
Некое намеки на смещение к одному исполняемому файлу наблюдаются в новых технологиях (тот же .Net).
Оставить комментарий
Имя или ник:
Комментарий: