Отправляет email-рассылки с помощью сервиса Sendsay

VB.NET-World

  Все выпуски  

VB.NET-World Выпуск 2


Информационный Канал Subscribe.Ru


VB.NET-World
::Рассылка:.
  Архив
  Подписка
  Форум

::Авторы:.
   Алексей
   Дмитрий

::Ссылки:.
   NoCode
   VBMania
  VBNet.ru

::Друзья:.

Visual Basic: новости сайтов, советы, примеры кодов
Новости сайта 'Все о Паскале'
Все про Pascal

::Баннеры:.

VB.NET-World

SUPERTOP

Рейтинг@Mail.ru

Все о криптографии: статьи, исходники, книги и др.
В жизни все меняется, адаптируется, эволюционирует, трансформируется, приходит к дисбаллансу и рушится. Для природы, не существует границ, рамок и правил. 20-й век можно назвать веком обрушения законов...

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

С наилучшими пожеланиями,
главный редактор VB.NET-World

Алексей Кувалин

Задать вопрос по рассылке можно отправив письмо в текстовом формате. Быстрый ответ по этому ящику гарантирован.


№ 2 (от 24.10.2002)
Содержание выпуска:
Компакт-диск по Visual BASIC!
Прочь все сомнения! Наконец-то вышел в свет долгожданный сборник всех исходников, кодов, утилит, документаций по Visual Basic!

Выдержки из меню:
  • исходники (30МБ)

  • документация (200МБ)

  • компоненты (40МБ)

  • утилиты (150МБ)

  • VB6.0 RUS (100МБ)

  • полезности (180МБ)


  • Цена диска 40 рублей + пересылка 35 рублей! Итого 75 рублей за полный комплект для профессионалов!


    Заказать >>>


    Windows and Office XP!

    WinXP Pro SP1 MUI >>>
    WinXP Home FINAL >>>
    OfficeXP SP1 MUI >>>

    Цена одного диска 50 рублей + пересылка 35 рублей = 85 рублей


    Компакт-диск "VB.NET-World"
    Стоит ли покупать?

    Когда-то, еще когда я был участником конфы "Сообча ВБ" меня посетила мысль создания компакт-диска для ВБ-программера, диска, который бы удовлетворил требования и профи и начинающего. Но воплотить идею в реальность получилось только в данный момент. Думаю, что в какой-то мере мне удалось одухотворить ранние перспективы. На диске представлены коллекция документационных материалов, включающий сайт рассылки "Мир программирования на Visual BASIC и HTML" с очень удобной навигацией, огромное количество учебников и книг по VB, около 11 инсталляционных программ, от самых простых, до полностью профессиональных пакетов. Инсталляция русской VB6. Очень большое количество примеров и исходников, компонентов. А самое главное, что представлены скины для любых проектов! Не обошлось и без полезных утилит. В общем весь VB в одном флаконе!


    F.A.Q.
    Задать вопрос в форуме VB.NET-World
    Добавление вопроса в форум
    Тема:
    Иконка сообщения:
    Сообщение:

    Уведомлять:
    Отметьте здесь, если вы хотите получать уведомления, когда вам ответят.

    Библиотека
    VB .NET: дорога в будущее

    "Если в лагере VB переполох, то Delphi это только на пользу!"
    Майкл Суинделл (Michael Swindell), директор Borland по инструментам RAD


    Введение

    Не так давно Microsoft в очередной раз заставила вздрогнуть программистов во всем мире, объявив о начале новой эры развития языков программирования. .NET Framework - вот то, что мы еще долго будем изучать, то, что станет фундаментом для наших новых программ, то, что будет волновать умы лучших программистов в следующие годы. Учитывая это, Microsoft решила пойти на вторую в своей истории авантюру после создания Visual Basic и представила новый язык программирования VB.NET. Что же такое VB.NET? Что будет с огромной армией программистов, которые писали свои программы на языке Visual Basic, выдержавшем шесть версий? Вот об этом мы и поговорим в этой статье.

    История создания Visual Basic

    Язык программирования Basic был создан в 1964 году двумя профессорами из Dartmouth College - Джоном Кенеми и Томасом Куртцом для обучения студентов навыкам программирования. Язык получился настолько простым и понятным, что через некоторое время его начали применять и в других учебных заведениях. В 1975 году, с приходом первых микрокомпьютеров, эстафету Basic приняли Билл Гейтс и Пол Аллен, основатели Microsoft. Именно они создали новую версию Basic для первых компьютеров "Альтаир" (MITS Altairs), способную работать в 4КБ оперативной памяти. Со временем именно эта версия и превратилась в один из самых популярных языков программирования в мире. 

    На пути к вершине славы у Basic было множество трудностей, которые он всегда с честью преодолевал, и когда появились первые персональные компьютеры IBM PC, именно он стал стандартом в программировании, но уже в виде GW-Basic. Потом был Turbo Basic, QuickBasic, Basic PDS, но всегда при разработке новой версии языка сохранялась совместимость с прежними версиями и программа, написанная для практически первого Basic, вполне (с незначительными изменениями) могла бы работать и в последующих версиях этого языка.

    Но наступили новые времена, и в начале 90-х появляется операционная система Microsoft Windows с новым графическим интерфейсом пользователя (GUI). Жизнь программистов превратилась в ад. Чтобы создать простую программу, приходилось писать несколько страниц кода: создавать меню и окна, менять шрифты, очищать память, "рисовать" кнопки и т.д. Однако преимущества нового интерфейса были настолько неоспоримы, что уже третья версия этой операционной системы стала фактическим стандартом для персонального компьютера.

    В это время в недрах Microsoft велось несколько параллельных проектов по созданию нового языка программирования для Windows. И вот в мае 1991 года мир увидел один из таких проектов - новый язык, названный Visual Basic. Система программирования, созданная разработчиками Visual Basic, позволяла "отстраниться" от сложнейшей внутренней структуры Windows и создавать программы из "кубиков", как в детском конструкторе. Меню, окна, списки, кнопки, поля ввода текста и другие элементы интерфейса Windows добавлялись в программу с помощью простейших операций drag&drop. Свою первую программу VB-программисты создавали уже через несколько минут после начала изучения этого языка! Более того, Visual Basic позволял разработчикам создавать новые объекты-"кубики", которые также могли использоваться в программах наравне со стандартными.

    И хотя многие С-программисты тихо посмеивались над попытками Microsoft сделать простой и понятный инструмент разработки Windows-программ, Visual Basic начал свое победное шествие по миру, и ничто не могло остановить этот процесс. Последние барьеры упали в 1994 году с выпуском Visual Basic for Applications. Именно в это время, после включения VBA в состав Microsoft Office, Basic начинает превращаться в один из основных стандартов программирования для Windows.

    Потом были новые версии, которые неизменно улучшали и расширяли язык, принося с собой новые возможности: OLE, DAO, JET, 32-битная архитектура и т.д. Последние версии языка были настолько удачными, что с их помощью можно было создавать приложения практически любой сложности: поддержка callback-функций, настоящий компилятор 1, превосходные средства отладки, поддержка библиотеки DirectX 2 - все это создавало впечатление непоколебимости позиций Visual Basic на рынке малых программных продуктов.

    Но настал 2000 год. Именно в этом году Microsoft впервые объявила о планах по созданию программной платформы .NET, которая, в конечном счете, и привела к кончине Visual Basic, а с ним и духа Basic, созданного 10 лет назад.

    Дух Basic - событийно-управляемое программирование

    Когда создавался Visual Basic, его разработчики выбрали схему работы программ, основанную на событиях 3. Именно эта схема позволяет не знать о том, что происходит за рамками вашей программы, и как она взаимодействует с операционной системой. Именно эта схема и стала итоге проводником к всеобщей популярности VB.

    Основа этой системы - отсутствие взаимодействия программиста непосредственно с операционной системой. Готовые кубики-"компоненты" Visual Basic генерируют события в ответ на действия пользователя. Эта простая и понятная система привела к тому, что практически любой пользователь мог за считанные часы ее изучить и начать создавать прикладные программы. Но, увы, это был не объектно-ориентированный язык, и уже тогда было понятно, что грядет время перемен.

    .NET Framework

    13 февраля 2002 года, уверен, войдет в историю современного программирования как день создания новой технологии программирования, день переворота в мире разработки Windows-приложений. Именно в этот день на конференции VSLive в Сан-Франциско компания Microsoft представила платформу .NET Framework и новую версию Visual Studio.

    Важность произошедшего нельзя недооценивать. Visual Studio.NET - это не просто очередная версия популярного пакета разработки приложений для Windows. "Visual Studio.NET и .NET Framework относятся к числу важнейших продуктов, когда-либо выпускавшихся Microsoft, - заявил Гейтс в своем выступлении, - это самые развитые средства разработки за всю историю существования Microsoft".

    По своей сути .NET Framework - это среда выполнения для приложений нового поколения, которая может быть установлена в любые версии Windows, начиная с Windows 98 (Windows 95 официально больше не поддерживается), и обеспечивает виртуальную систему исполнения (Virtual Execution System) для приложений, созданных, например, с помощью Visual Studio.NET. Особенность приложений для .NET Framework заключается в том, что это не инструкции процессоров Intel, а инструкции для виртуальной машины на языке Microsoft Intermediate Language (MSIL).

    Но это мы уже, кажется, проходили и в Visual Basic, и в виртуальной машине Java, поэтому .NET Framework вместо интерпретатора MSIL содержит его JIT-компилятор. Интересно, что JIT-компилятор не выполняет компиляцию всего MSIL-кода при первом обращении к программе. Вместо этого каждый метод компилируется при первом обращении к нему, и, таким образом, неиспользуемый код не компилируется. Откомпилированный код хранится в памяти, и последующие обращения к программе выполняют уже откомпилированный код. Поэтому, при первом запуске .NET-программы заметна некоторая задержка, достигающая 3-4 секунд; это, пожалуй, один из наиболее существенных недостатков платформы .NET. Однако Microsoft также предоставляет специальный компилятор CLR Native Image Generator (NGEN), который выполняет компиляцию всего MSIL-кода и сохраняет результат на диске.

    Формат исполняемых файлов .NET Framework расширяет спецификацию PE (Portable Executable), так что на новой платформе будут уже другие exe- и dll-файлы. Microsoft также обещает, что среда разработки Visual Studio.NET всегда будет открыта для сторонних производителей инструментальных средств с помощью технологии Open Tools Platform 4.

    Если вы уже видели .NET Framework, то наверняка заметили, что это очень обширная библиотека, с помощью которой можно создавать серьезные приложения. Структура .NET Framework понятна и проста и, самое главное, это действительно полностью объектно-ориентированная библиотека. .NET Framework легка в изучении, самое главное - понять ее принципы и структуру. По замыслу Microsoft, через несколько лет архитектура .NET ляжет в основу большинства программ для Windows, и в конечном счете должна заменить собой интерфейс API, который, вероятно, уйдет в прошлое.

    Поскольку .NET Framework - полностью объектно-ориентированная платформа, а Visual Basic никогда не был таковым, то переход на новое "мышление" потребовал кардинальных изменений языка, которые, в конечном итоге, привели к отказу от глобальной совместимости 5 с прежними его версиями. Эти изменения настолько существенны, что перед нами предстает совершенно новый язык программирования Visual Basic .NET.

    Изменения в VB.NET

    Среда разработки. Обзор изменений Basic начнем, пожалуй, со среды разработки. Если честно, то мне больше нравилась IDE 6-й версии Visual Studio, но это, конечно, субъективная точка зрения. Во-первых, сразу хочу обрадовать всех поклонников унификации и стандартизации, так как все языки программирования из Visual Studio.NET, имеют одну общую среду разработки 6. Эта среда, в принципе, имеет неплохие средства отладки программ, хотя и непривычные для VB-программистов. 

    Основная трудность - в том, что теперь проекты компилируются сразу при их запуске, а не специальной командой, как раньше, и для отладки запускается созданный exe-файл. Конечно, средства отладки позволяют свободно переключаться между кодом и непосредственно программой, но время, требуемое для запуска проекта, неприлично большое для VB-программистов, привыкших к мгновенному запуску. Но это все ерунда по сравнению с основными изменениями, произошедшими в синтаксисе языка и его концепции.

    Типы данных и переменные. Пожалуй, со времен перехода на Visual Basic не было таких глобальных изменений в типах данных и работе переменных. VB.NET больше не поддерживает ключевое слово Deftype в проектах, нет типов данных Variant и Currency, появились новые типы Char, Short и Object (не смейтесь, это действительно новый тип). Более того, тип данных Integer теперь 4-х байтный (как был Long), а тип данных Long имеет размер 8 байт. На практике это означает, что если раньше при объявлении функций API вы использовали тип Long, то теперь нужно использовать Integer. Зачем это сделано? Существуют планы (уже и проекты) по созданию 64-х битной операционной системы (только не говорите, что вы ничего об этом не слышали), так вот там очень даже пригодится новый Long. Аналогом старого Integer становится новый тип данных Short, а вместо Variant нам предлагают использовать тип Object, который теперь полностью перенимает свойства старого Variant. И последнее, в новом языке также отсутствует ключевое слово Any, которое использовалось при объявлении типов данных и предназначалось для отключения контроля типов. Честно говоря, я понимаю Microsoft и поддерживаю эти изменения, которые в будущем помогут нам при переходе к 64-х битной архитектуре.

    Кроме уже вышеописанных различий, в VB.NET появилось несколько других незначительных изменений. Например, если раньше при операциях с данными типа Variant результат был больше, чем мог содержать исходный тип данных, то результат преобразовывался к Double; теперь при работе с похожим типом Object такой результат преобразуется к 64-bit Long.

    Другие существенные изменения при работе с данными связаны с изменениями их объявления. Если раньше вы, объявляя переменную так:

    Dim I, J As Integer

    получали I - Variant, а J - Integer, то теперь обе переменные будут иметь тип данных Integer. Ну и, конечно, если вы не указываете тип переменной, то она будет иметь тип данных Object. Более того, теперь при объявлении строки вы не можете указать ее длину, т.е. все строки в VB.NET имеют переменную длину. В принципе, к этому все и шло, так как даже в старом VB все строковые функции работали только со строками переменной длины и VB, незаметно для нас, сам производил соответствующие преобразования, естественно жертвуя при этом скоростью.

    Ну и на закуску, вот еще несколько существенных различий в объявлении и работе переменных:

    • переменные в функции и процедуры по-умолчанию передаются по значению (ByVal), а не по ссылке (ByRef), как раньше;

    • изменена область видимости переменных при объявлении по тексту программы. Если раньше, объявив переменную в теле цикла For, вы могли использовать ее и дальше, то теперь эта переменная будет недоступна вне этого цикла;

    • индексация массивов изменена и теперь начинается только с 0, объявление Dim(10) инициализирует массив с 11 элементами 7;

    • при объявлении переменной можно указать не только Public, Private, Static и Friend, но и Protected, Protected Friend, а в качестве дополнительного параметра - Shared, Shadows и ReadOnly (подробности читайте в документации);

    • отсутствие функции IsMissing вынуждает при объявлении необязательных (Optional) параметров сразу указывать их значение по умолчанию... а как же UDT!? Кстати, теперь пользовательский тип данных (UDT) объявляется с помощью конструкции Structure struct_name ... End Structure (раньше такие типы объявлялись с помощью Type type_name ... End Type).

    Функции, операторы - новая стратегия. Взглянув на список функций и операторов нового языка, можно сделать один приятный вывод: они практически те же. Т.е. более 90% средств языка VB 6 были перенесены в новую версию. Однако отличия все же есть. Например, вы больше не найдете функций, заканчивающихся на $ и B, которые возвращали соответственно строковые и двоичные данные. Нет функций Date, Time. Вы также не сможете больше использовать операторы Circle, Line и Pset, как нет и On ... GoSub, On ... GoTo, Initialize, отменены за ненадобностью IsEmpty, Let, Set и семейство инструкций Option и Property [Get][Let][Set]. Изменений много, но на первый взгляд это все равно Basic с его операторами, функциями и инструкциями, так что если вы хорошо знаете синтаксис VB 6, считайте, что и синтаксис VB.NET вам также хорошо знаком, и незначительные изменения в нем никак не портят общее впечатление.

    Формы? Нет, Windows Forms! Visual Basic.NET использует совершенно новые формы - Windows Forms. Windows Forms практически совместимы с формами Visual Basic 6, однако имеются некоторые ключевые различия:

    • Windows Forms не поддерживают элемент управления OLE container control;

    • Отсутствуют элементы управления Shape и Line;

    • В Windows Forms имеется два элемента управления, представляющих меню - MainMenu и ContextMenu;

    • Windows Forms не поддерживает динамический обмен данными (DDE);

    • Нет метода Form.PrintForm;

    • В иерархии .NET существует улучшенный объект Clipboard (System.WinForms.Clipboard), это предполагает больше функциональных возможностей и большее количество поддерживаемых форматов, чем объект Clipboard в Visual Basic 6.0;

    • В Windows Forms нет свойства Name у форм и контролов, перебор всех контролов (форм) для поиска элемента с нужным именем работать не будет;

    • Теперь нужно использовать pixel-и вместо twip-ов;

    • Windows Forms поддерживает только шрифты truetype и opentype.

    Как видите, различия очень существенны, и я привел только основные из них. Вообще же, Windows Forms дает гораздо больше возможностей для программиста. Например, раньше простейшая операция по добавлению значка в systray требовала огромных усилий, теперь это такой же пустяк, как и для С++ программиста, а может быть это даже на VB.NET сделать и легче. Прогнозируемое расширение возможностей .NET делает Windows Forms очень привлекательными. Хотя и выбора нам тоже не предоставили.

    Я не хочу делать подробный обзор всех изменений, введенных в Windows Forms, да это и не нужно, однако, хочу вас сразу предупредить, что автоматическое преобразование старых форм (Form) не пройдет.

    Преобразование проектов VB 6

    Microsoft, понимая что процесс перехода к VB.NET будет сложным, создала специальный мастер, облегчающий преобразование проектов. Я не буду описывать, как происходит процесс конвертации проекта, так как по этой теме изданы многотомные книги, написано множество статей и, наверняка, вы уже в курсе событий. Хочу только сказать, что на практике качественно преобразовать можно только классы, т.е. только непосредственно код VB. Говоря другими словами, вы не сможете с помощью мастера преобразовать 90% своих проектов, содержащих формы (Form). Нет, конечно, если вы написали приложение с одной формой, двумя кнопками на ней и пятью строками кода, то мастер преобразования с большим удовольствием, "похрюкав" минут пять диском, выдаст вам новый проект, который скорее всего, будет работоспособен, но есть ли у вас такие программы? Кстати, предупреждаю, что результат такого преобразования, скорее всего, приведет вас в состояние глубокого шока, так что если вы хотели таким образом попутно изучить VB.NET, то хочу вас огорчить - этого не произойдет, учиться придется по книгам и читая документацию. Все, что выживает при подобной конвертации, так это классы.

    Почему же мастер так плохо работает? Дело в том, что преобразование невозможно сделать по причине глобального изменения структуры форм (Form), точнее говоря, переносу их в Windows Forms из библиотеки .NET Framework. Таким образом, если у вас есть программы, написанные на VB 6, то качественный перенос их в VB.NET, с помощью мастера невозможен. Однако, вы можете сделать это вручную, и тогда ваша программа сможет использовать всю мощь платформы .NET Framework.

    Заключение

    Microsoft в курсе споров, возникших вокруг VB.NET в сообществе разработчиков на Visual Basic. Стараясь успокоить пользователей Visual Basic 6.0, озабоченных тем, что с выпуском Visual Studio их привычной среде разработки пришел конец, Microsoft, совсем недавно, объявила о намерении поддерживать VB 6.0 до 2008 года. Однако после 2005 года эта поддержка будет ограниченной, и VB 6.0 никогда не станет инструментом для работы в 64-битных средах.

    "В VB.NET мы кое-что изменили, так что это, скорее, разные языки, - говорит менеджер Visual Studio Роберт Грин (Robert Green), - Но мы уверены, что различия в синтаксисе вполне преодолимы". По его словам, при переходе от вычислительной модели, ориентированной на ПК, к веб-центрической модели .NET Microsoft оказалась перед сложным выбором. Этот выбор уже сделан, и нам остается только принять его. Однако Грин также отмечает, что разработчики должны сами решать, стоит ли пытаться перенести существующие приложения Visual Basic на VB.NET. "Можно ли перенести приложение, написанное на VB 6.0? - спрашивает Грин. - Если оно работает, я бы не стал".

    Что я могу сказать? Лично я бы хотел, чтобы VB не менялся, а расширялся. Microsoft, на мой взгляд, сильно погорячилась, качнув VB в сторону ООП: полиморфизм, наследование и инкапсуляция, конечно хорошо, но у Visual Basic была своя концепция, которая была не так уж и плоха, как кажется. Visual Basic изначально был самым простым языком программирования, единственным, пожалуй, недостатком которого была более низкая скорость выполнения программ, чем в настоящих компилируемых языках, например C++.

    Мне всегда казалось, что у Microsoft насчет языков программирования есть целая концепция, по которой во власть Visual Basic отдавались создание пользовательских интерфейсов и простых программ создания программ и легкость их отладки, а для C++ - системное программирование, графика, а также все, где недопустимы компромиссы по скорости выполнения. Но я был неправ... Я верил, что если глава империи Microsoft Билл Гейтс (Bill Gates) называл Basic своим любимым языком программирования, то нас не тронут, они не посмеют... но я ошибался... ах как бы я хотел, чтобы все это был сон... страшный сон.

    Но время идет, и поезд под названием .NET отправился в путь и он уже подъезжает к вашей станции. Но еще есть время запрыгнуть в вагон VB.Net - дверь открыта, билеты никто не требует и проводник еще пока протянет вам руку,... спешите, поезд ждать не будет и он уже в пути.

    Стоит знать

    Хотя в Visual Basic, начиная с версии 5, имеется компилятор кода, программы, написанные на нем, не являются самодостаточными и требуют для выполнения специальную runtime-библиотеку.

    DirectX, начиная с версии 6, имеет в своем составе специальную объектную библиотеку, позволяющую Visual Basic без проблем работать с мультимедиа. Кроме того, некоторые функции DirectX были специально оптимизированы для использования в Visual Basic.

    Подробнее о событиях и Visual Basic читайте в статье "Сообщения Windows в Visual Basic" в этом номере "Программиста".

    Уже сейчас многие компании приступили к интеграции своих инструментов разработки в Visual Studio.NET; это Crystal Decisions, Rational Software и многие другие. Более того, Microsoft проводит специальную программу Visual Studio.NET Integration Program по привлечению новых разработчиков.

    Не все так плохо, как утверждают некоторые эксперты. На самом деле, вы можете продолжать использовать свои ActiveX-компоненты в VB.NET, кроме того, новые версии этих компонентов, написанные уже на VB.NET, будут полностью совместимы с прежними их версиями, более того, классы, написанные на VB 6, практически без изменений могут быть перенесены в VB.NET.

    Специально для того, чтобы сократить время адаптации к новой среде программирования, ее разработчики предусмотрели возможность использования "старых" клавиатурных сокращений из VB 6, чего я бы вам не рекомендовал использовать, ее могут в следующей версии и убрать.

    Первая beta версия VB.NET в данном случае создавала массив с 10 элементами, имеющими индексы от 0 до 9, что приводило в состояние легкого шока не только "VB ветеранов", но и вообще всех здравомыслящих программистов, но, к счастью, здравый смысл взял верх и все встало на свои места.

    Статья опубликована в журнале "Программист" №5 за 2002 год.


    База знаний
    Блокирование любого окна

    Создаете форму. На ней располагаете 2 кнопки. И вставляете код:
    #If Win32 Then
    Private Declare Function EnableWindow& Lib "user32" _
    (ByVal hWnd As Long, ByVal fEnable As Long)
    Private Declare Function FindWindow& Lib "user32" _
    Alias "FindWindowA" (ByVal lpClassName As String, _
    ByVal lpWindowName As String)
    #Else
    Private Declare Function EnableWindow% Lib "user" _
    (ByVal hWnd As Integer, ByVal aBOOL As Integer)
    Private Declare Function FindWindow% Lib "user" _
    (ByVal lpClassName As Any, ByVal lpWindowName As Any)
    #End If
    Function DisWin(WindowName$, EnabOrDisab&)
    'EX: Call DisWin("mIRC32", 0)
    Dim lFndWnd As Long
    Dim lDisEnWnd As Long
    lFndWnd = FindWindow(vbNullString, WindowName$)
    'Finds the Window Name
    lDisEnWnd = EnableWindow(lFndWnd, ByVal EnabOrDisab&)
    'Disables all mouse and keyboard input to the specified window.
    'In ByVal EnabOrDisab& you either enter: 0
    'to Disable Window or 1 to Enable it.
    End Function
    Private Sub Command1_Click()
    Call DisWin("Form1", 0)
    End Sub
    Private Sub Command2_Click()
    Call DisWin("Form1", 1)
    End Sub
    
    Включение ждущего режима
    Private Declare Function SetSystemPowerState Lib "kernel32" _
    Alias "SetSystemPowerState" _
    (ByVal fSuspend As Long, ByVal fForce As Long) As Long
    
    Sub Form_Load ()
    Call SetSystemPowerState (&H0, &H0)
    End Sub
    
    Криптография
    Новости сайта NoCode

       12.10.2002 Источник: NoCode
    Появилась интереснейшая статья, написанная Russian Software Developer Network - "Хеширование, шифрование и цифровая подпись с использованием CryptoAPI и .NET".

    Также появился исходный текст симметричного алгоритма шифрования IDEA, написанный на языке Си. Подробнее здесь.

    Исходный текст какого алгоритма шифрования Вы хотели бы увидеть на сайте? Ответы пишите в форуме. Æ

    Новости из мира безопасности

       24.10.2002 Источник: Компьюлента
    Американские спецслужбы сообщили о самой серьезной атаке на корневые DNS- серверы за всю историю интернета. По информации Центра защиты национальной инфраструктуры ФБР США, во время атаки семь из тринадцати серверов, управляющих главными магистралями интернета, перестали отвечать на запросы пользователей, работа еще двух серверов время от времени прерывалась.

    Атака была предпринята в понедельник 21 октября, примерно в 16:45 по времени восточного побережья США (0:45 вторника 22 октября по московскому времени). На корневые серверы было отправлено огромное количество неправильных запросов. В результате, нагрузка на серверы в 30-40 раз превысила обычную. Серьезных перебоев в работе Сети не произошло лишь из-за небольшой продолжительности атаки - она длилась всего один час. Стабильности работы интернета способствовало и то, что многие провайдеры кэшируют данные из других сегментов Сети для ускорения доступа к ним. Однако в случае более продолжительной атаки или выхода из строя большего числа корневых серверов, нормальная работа интернета могла бы быть нарушена.

    По информации агентства Reuters, в число наиболее сильно пострадавших от атаки root-серверов вошли компьютеры, установленные в Информационном центре министерства обороны США в городе Вена, штат Виржиния, Исследовательском центре вооруженных сил США в Абердине, штат Мэриленд, штаб-квартире ICANN в Лос-Анджелесе, Калифорния и другие. За пределами США были выведены из строя корневые серверы в Токио и Стокгольме. Источник атаки до сих пор неизвестен. ФБР, Служба внутренней безопасности и администрация президента США в настоящее время заняты расследованием обстоятельств чрезвычайного происшествия.

       24.10.2002 Источник: Компьюлента
    Неизвестные хакеры проникли на прошлой неделе на сайт BetaPlace, предназначенный для бета-тестеров Microsoft. Об этом еще в понедельник сообщил сайт TechTV. Первые подозрения о взломе появились, после того как Microsoft разослала 23000 пользователям BetaPlace электронные письма с просьбой поменять свои имена и пароли в системе Passport. Такая необходимость объяснялась в письме некой "проблемой", о сущности которой в письме к бета- тестерам ничего не говорилось.

    Позже представитель Microsoft Рик Миллер подтвердил факт проникновения хакеров на сайт. Миллер сообщил, что произошел единственный взлом BetaPlace, последствия которого ему неизвестны. Вполне вероятно, хакеры намеревались загрузить с сайта предварительные версии новых продуктов Microsoft. После обнаружения факта взлома сайты BetaPlace и Windows Beta были временно отключены для проведения технических работ.

    По словам Миллера, уязвимость, которой воспользовались хакеры, ликвидирована, при этом представитель Microsoft отказался сообщить, ведется ли по факту взлома какое-либо официальное расследование. Согласно появившемуся позже сообщению сайта The Inquirer, ответственность за взлом взяла на себя warez- группа iNFLUNCE.

       24.10.2002 Источник: Компьюлента
    В пятницу федеральный суд США приговорил гражданина Российской Федерации Василия Горшкова к трем годам тюремного заключения. 27-летний Горшков, житель Челябинска, был признан виновным во взломе компьютерных систем 11 американских компаний и краже номеров кредитных карт. Василий Горшков работал совместно с Алексеем Ивановым, участь которого пока не определена.

    Изначально обвинители требовали назначения Горшкову наказания в виде 27 лет тюремного заключения, однако судья Джон Кофенор снизил срок до трех лет, по причине "проблем со здоровьем и финансовых неурядиц" семьи русского хакера. Василий Горшков также обязан возместить пострадавшим от его действий компаниям убытки в размере 690 тысяч долларов. Дело Горшкова является первым в истории американского Федерального Бюро Расследований, в ходе расследования которого удалось "выманить" киберпреступника в США. Кроме того, это первое расследование ФБР, в ходе которого американским следователям удалось получить доказательства вины подозреваемого, загрузив данные с компьютера, расположенного за пределами США.

    Василий Горшков и Алексей Иванов были арестованы в США в ноябре 2000 года. Информация об аресте двух жителей Челябинска была опубликована в СМИ по всему миру, по причине того, что ФБР использовало довольно необычные методы для получения доказательств противоправной деятельности граждан России. Тогда в ФБР была создана фиктивная компания, названная "Invita", от имени которой двое россиян были приглашены в Сиэтл (штат Вашингтон) на собеседование. После того как хакеры прибыли в США, их попросили доказать свои способности в области взлома компьютерных систем, просканировав сеть Invita на наличие уязвимостей.

    Горшков и Иванов подключились к компьютерам, расположенным в России, для того чтобы загрузить необходимое программное обеспечение. С помощью специального ПО, отслеживающего нажатие клавиш на клавиатуре, сотрудникам ФБР удалось узнать пароль доступа к российским компьютерам хакеров. Таким образом, ФБР удалось получить доказательства того, что жители России незаконно проникали в компьютерные системы американских компаний.

    Ранее в этом году Федеральная Служба Безопасности РФ выразила протест против методов, использовавшихся ФБР для доказания вины Горшкова и Иванова. По мнению ФСБ, Федеральное Бюро Расследований не имело права проникать в компьютерную систему, расположенную в России. Тогда судья, расследующий деятельность русских хакеров, принял решение, что агенты ФБР вправе не подчиняться российским законам.

       24.10.2002 Источник: pgp.com
    Ну вот и дождались давно обещанной 8 версии. Правда, она только под Windows/MacOS X, немного ущербная - работает только до 6 декабря, и опять занимается дискриминацией - загрузка разрешена только из определенного списка стран, в число котоорых Россия не входит. В связи с чем сразу отпадает желание даже смотреть на это поделие...


    Tips'n'Tricks №1
    Что такое IDEA?

    IDEA (International Data Encryption Algorithm) - это вторая версия блочного шифра разработанный К.Лейем (Lai )и Д.Месси (Massey) в конце 80-х. Это шифр состоящий из 64-битных повторяющихся блоков со 128-битным ключом и восемью проходами (rounds). Хотя этот шифр не шифр Файстела (Feistel), дешифрование выполняется по тому же принципу, что и шифрование. Структура шифра была разработана для легкого воплощения как программно, так и аппаратно, и безопасность IDEA основывается на использовании трех не совместимх типов арифметических операций над 16-битными словами. Скорость программного IDEA сравнима со скоростью DES.

    Один из принципов создания IDEA - затруднить дифференциальный криптоанализ. Также не одна линейная криптоаналитическая атака не закончилась успешно, как и не было выявлено алгебраически слабых мест. Самый полный анализ провел Daemen. Он открыл большой класс 2^51 слабых ключей, при использовании которых в процессе шифрования, ключ может быть обнаружен и востановлен. Однако, т.к. в IDEA существует 2^128 возможных вариантов ключей, то это открытие не влияет на практическую безопасность шифра.

    Скачать IDEA v2.2a (исходник на Cи).

    Выпуск подготовили:
    Алексей: x-alexis@mail.ru
    Дмитрий: dmitri@pisem.net
    © 2002 Рассылка "VB.NET-World"
    Главный редактор рассылки: Алексей
    Зашифрованный редактор: Дмитрий
    Контактная информация:
    Алексей ICQ: 173021957
    Дмитрий ICQ: 169801042

    http://subscribe.ru/
    E-mail: ask@subscribe.ru
    Отписаться
    Убрать рекламу

    В избранное