Возвращаясь к теме про фаззеры.
Вот код, которым я пользуюсь для написания стресс тестов и фаззеров в своих проектах. Класс EntropyGenerator – обертка вокруг генератора случайных чисел.
Вот код, которым я пользуюсь для написания стресс тестов и фаззеров в своих проектах. Класс EntropyGenerator – обертка вокруг генератора случайных чисел.
Точка входа в DLL, так же как и точка входа в программу, – это очень специальное место. Зона. В Зоне действуют свои правила касательно того, что можно делать, а что делать нельзя. В Зоне можно инициализировать локальные данные DLL, можно создавать критические секции. В Зоне нельзя динамически загружать другие Модули или создавать потоки. Любой Сталкер знает и следует правилам Зоны. Все остальные рано или поздно нарушают правила и расплачиваются за это.
Только что получил чудесный комментарий в ответ на вопрос по хороший курс лекций по C# для непрограммиста. Орфография оригинала сохранена. Выделение моё:
Как насчёт того, чтобы почитать MSDN Library?
Настоятельно рекомендую иметь у себя Offline версию. Ибо, ИМХО, удобнее. Очень актуальной будет ‘MSDN Library for Visual Studio 2008′:
Если нет 2.0 Гб внешнего трафика – добро пожаловать в MSDN Online:
http://msdn2.microsoft.com/en-us/library/default.aspx
Тебя интересуют разделы "Getting Started with Visual C#", "C# Programming Guide", "Writing Applications with Visual C#" и "C# Reference".
Находятся:
- MSDN Online:
"Development Tools and Languages" -> "Visual Studio 2008" -> "Visual Studio" -> "Visual C#"
- MSDN Offline:
"Development Tools and Languages" -> "Visual Studio" -> "Visual C#"
Думаю, этого достаточно для начала. Потом путь твой будет лежать через тернии форумов и блогов.
"Проклятье! А я и не знал что это так сложно", – подумал Штирлитц.
С другой стороны, отличное настроение на весь день не каждый подарит. Спасибо большое.
… почему программисты, уже озаботившиеся ведением подробного журнала о том, что, где и когда случилось, никак не позаботились о том, чтобы фатальные ошибки находились сразу, простым текстовым поиском? Нет ну серьезно, уровни важности сообщений – есть. Вывод сообщения на каждый чих – есть. Ключевые слова (trace, info, warning & error) – есть! Но найти что именно сломалось в этом многомегабайтном монстре никак не получается. Сообщений об ошибках либо нет, либо их очень много и не по делу. Или еще хуже – финальное сообщение «Ой! Тут что-то поломалось!» есть, а чем оно вызвано – нет. Или есть, но пару десятков тысяч строк текста тому назад…
P.S. Agrhh!
Upd: Нашел что падало. Банальный Access Violation. В логах – ничего. От отладчика его тоже спрятали. Ууу! Сатрапы!
Структура репозитория исходников типичного проекта обычно представляет собой дерево:
Основная ветка, от которой отходят ветки подразделений, команд и отдельных подпроектов. Новый код или исправления старого производятся в самых нижних ветках. Затем накопленные изменения перебрасываются в ветку, находящуюся выше по иерархии. При этом код проходит различные проверки, начиная от банальной «проверки временем», до прогона через формальный набор тестов различной сложности. Сложность и скрупулёзность проверок, как правило, растет при приближении к основной ветке. По мере надобности, от основной ветки отпочковываются ветки выпускаемых версий. Именно в них вносятся последние исправления и собирается финальная сборка продукта.
А не подскажет ли кто хорошего курса уроков/лекций по Java или C#, подходящий для человека, далёкого от программирования? Рассказывающий об основах, безо всяких, лишних поначалу, подробностей и деталей. Можно по-русски, можно по-английски. Нам без разницы.
Ключ «Image File Execution Options» знаком, наверное, всем кто вынужден тратить много времени на отладку приложений. В частности, с его помощью можно указать системе всегда запускать определённый процесс под отладчиком. В этом же ключе утилита gflags.exe сохраняет выбранные отладочные опции и т.д. За подробностями рекомендую обратиться в Google, там есть много полезного.
Recent Comments