Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Предлагаю соревнование =)

Ответить
Настройки темы
Предлагаю соревнование =)

Пользователь


Сообщения: 83
Благодарности: 1


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Собственно, давайте-ка посоревнуемся в написании минимального прЫложения под Маст... под Windows
Правила... или условия... хм:
1) прога должна делать следующее: показывать мессагу с произвольным текстом.
2) ссылки кидать сюда, не присылать вирей...
3) предупреждаю всех: перед запуском проверьте экзешник любимым дизассемблером на наличие всякой гадости...

ну вот и все... так как вам идея?

ПыСы
тока не бананьте мну

Отправлено: 02:13, 13-05-2005

 

Аватара для McDAK

Модер


Сообщения: 830
Благодарности: 3

Профиль | Отправить PM | Цитировать


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

-------
Знание некоторых принципов нередко возмещает незнание некоторых фактов. Гельвеций


Отправлено: 06:40, 13-05-2005 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Savant

Старожил


Сообщения: 300
Благодарности: 6

Профиль | Сайт | Отправить PM | Цитировать


uStick
Цитата:
Собственно, давайте-ка посоревнуемся в написании минимального прЫложения под Маст
Давайте . Оптимизация - это моё . Тока неизвестно в чем тут соревноваться - мин. размер файла формата PE = 1024 байт.
Цитата статья с msdn.microsoft.com:
The file alignment of sections in the executable file can have a significant impact on the resulting file size. In Visual Studio 6.0, the linker defaulted to a section alignment of 4KB, unless /OPT:NOWIN98 or the /ALIGN switch was used. The Visual Studio .NET linker, while still defaulting to /OPT:WIN98, determines if the executable is below a certain size and if that is the case uses 0x200-byte alignment.
Считаем: 0x200 - это 512 байт, в екзешнике минимум 2 секции (заголовок PE и секция кода) => 2*512=1024. Оригинал статьи.

Примеры этих "минимальных" приложений:

FAsm 1.52
Код: Выделить весь код
format PE GUI 4.0

include 'c:\!Backup =)\e\fasm\include\win32a.inc'

; no section defined - FAsm will automatically create .flat section for both
; code and data, and set entry point at the beginning of this section

        invoke  MessageBox,0,_message,_caption,MB_ICONEXCLAMATION
        invoke  ExitProcess,0

_message db '1024 байт,13,'Писано на FAsm''e',0
_caption db 'ЫЫЫыыыыы :D',0

; import data in the same section

data import

 library kernel32,'KERNEL32.DLL',\
         user32,'USER32.DLL'

 import kernel32,\
        ExitProcess,'ExitProcess'

 import user32,\
        MessageBox,'MessageBoxA'

end data
К сожалению на днях погорел мой Seagate, поэтому не имею возможности откомпилить нижеприведенный код, но точно знаю, что его размер будет тоже 1024 байт
MSVC++.NET 2002
Код: Выделить весь код
#include "windows.h"

#pragma comment(linker,"/MERGE:.rdata=.text")
#pragma comment(linker,"/FILEALIGN:512 /SECTION:.text,EWRX /IGNORE:4078")
#pragma comment(linker,"/ENTRY:mainnn")
#pragma comment(linker,"/NODEFAULTLIB")

void mainnn(void)
{
	MessageBox(0, "1024 байт\nПисано на MSVC++ 2002", "ЫЫЫыыыы :D", MB_ICONEXCLAMATION);
}

Отправлено: 12:09, 13-05-2005 | #3


Пользователь


Сообщения: 83
Благодарности: 1

Профиль | Сайт | Отправить PM | Цитировать


Вложения
Тип файла: zip New.zip
(497 байт, 22 просмотров)

Хм... воть у меня уже вышло 569 байт писал без компилятора - ручками показывает мессагу и пишет то же самое в файл...

Отправлено: 17:01, 13-05-2005 | #4


Пользователь


Сообщения: 83
Благодарности: 1

Профиль | Сайт | Отправить PM | Цитировать


McDAK
1) главное - чтобы был PE-файл минимального размера. все. ну и чтоб он работал ))
2) к чему? хм... а разве не интересно? ))

Отправлено: 17:03, 13-05-2005 | #5


Аватара для Savant

Старожил


Сообщения: 300
Благодарности: 6

Профиль | Сайт | Отправить PM | Цитировать


Изображения
Тип файла: png lol.png
(5.0 Kb, 37 просмотров)

uStick
Цитата:
1) главное - чтобы был PE-файл минимального размера. все. ну и чтоб он работал ))

Отправлено: 17:35, 13-05-2005 | #6


Пользователь


Сообщения: 83
Благодарности: 1

Профиль | Сайт | Отправить PM | Цитировать


Изображения
Тип файла: gif Untitled-2.gif
(4.0 Kb, 18 просмотров)

Savant
блин все испортил ))) я писал под WinXP.. тама идет ))

Отправлено: 01:31, 14-05-2005 | #7


Аватара для McDAK

Модер


Сообщения: 830
Благодарности: 3

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: jpg Error.JPG
(96.4 Kb, 16 просмотров)

uStick
Не идет , тока ошибка не 17, как у Savant, а 5.

-------
Знание некоторых принципов нередко возмещает незнание некоторых фактов. Гельвеций


Последний раз редактировалось McDAK, 14-05-2005 в 06:25.


Отправлено: 06:08, 14-05-2005 | #8


Аватара для CyberDaemon

DOOMer


Сообщения: 3254
Благодарности: 438

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: jpg Working.jpg
(5.1 Kb, 18 просмотров)

uStick Идет-идет! (WINXP SP1)

-------
"640 K ought to be enough for anybody" Bill Gates, 1981


Отправлено: 12:21, 14-05-2005 | #9


Аватара для [mzd]

Линуксоид-стакановец


Сообщения: 2391
Благодарности: 186

Профиль | Отправить PM | Цитировать


У меня тоже все работает.

-------
Живя в реальном мире, стремись к невероятному... Эрнесто Че Гевара
Everybody lies. (c) House M.D.
Базовая настройка Ubuntu. Документация для новичка.
Руководство по установке, начальной настройке и основам использования операционной системы Ubuntu


Отправлено: 13:18, 14-05-2005 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Предлагаю соревнование =)

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Предлагаю драйвер модема к C350L. Guest Мобильные ОС, смартфоны и планшеты 4 17-04-2004 13:07




 
Переход