Здрасьте, уважаемые! Я тут новичок, пока ещё не совсем освоился, но у меня есть к вам одно предложение, надеюсь оно кого-нибудь заинтересует. Всем известна проблема создания GUI приложений на асме, что бы элементарное окошко сделать, надо редактор ресурсов доставать, который ещё не все контролы знает, ковырятся в нём, пытаясь создать приличный диалог, который потом rc.exe отказывается компилить! А если с этим всё ок, то где гарантия, что потом вашу прогу никто не будет ковырять ResHacker'ом или eXeScop'ом? Лично я ресурсы не долюбливаю. Глядя на весь этот беспорядок, я решил побыстрому набросать небольшую прогу на Delphi, которая позволяла бы делать снимок любого окна и генерировать исходник на асме, который после компиляции создаёт вточности такое же окно. Сделал, к примеру окошко в Delphi или С++, откомпилил, запустил ASM Form Generator и визуальная часть готова! Для примера я брал окно калькулятора, очень похоже получается, даже менюху в ресурсы кидает. Сейчас работаю над сдиранием BMP с окон в файл. Одна беда - опыта маловато, не откажусь от любой помощи. В общем, все, кто не равнодушен, высказывайте своё мнение, надеюсь я не зря стучал в клавиатуру.
IceStudent Я имел ввиду, что если на окне есть компонент Picture или Image, что бы его Canvas сохранялся в файл, прописывался в ресурсы типа 100 BITMAP "100.bmp", и при компиляции выходило окно с этим рисунком. Если хочешь посмотреть, пиши cmd-prompt@yandex.ru.
Всем известна проблема создания GUI приложений на асме Зачем писать сложные GUI приложения на асме? Мне кажется, не надо впадать в крайности.
Я предпочитаю пользовать асмом в тех случаях, когда он необходим (ускорение производительности, уменьшение размера кода, при низкоуровневом программировании и т.д.).
На самом деле не вижу ничего сложного в написании больших и сложных GUI на асме. Даже в блокноте. Да, кода много, да, от функции SendMessage начинает тошнить, но сложностей-то, как таковых нету. Ничего не имею против связки, например, C++ Builder (интерфейс) + ASM (некоторые функции). Но если человек хочет писать GUI именно на асме, значит этот процесс ему доставляет некоторое эстетическое удовольствие, и вряд ли он откажется от привычных средств. Но это я только по себе сужу...
crypto Я и говорю, что кому процесс интересен, тот не смотря ни на что будет всё делать ручками. А кому нет - будет использовать ассемблер как вспомогательный инструмент лишь для повышения скорости и т.д. Действительно, набирая в тридцать третий раз строчку "call CreateWindowExA@48", трудно избавиться от мысли, что делашь не очень-то благоданую работу... P.S. А идея программы, сама по себе, интересная...
Sl4v4 В конце-концов, когда что-то начинает надоедать, человек начинает искать, как бы это дело обойти, что порой приводит к созданию нетривиальных вещей. Я обеими руками за творчество, но когда времени мало, то приходится проявлять определенный скепсис.