О VB.Net
По материалам сайта vbrussian.com
Информация, датированная концом мая месяца 2001 года, VBITS, презентация
от David Mendlen, Microsoft Visual Basic Product Planner
Была показана предварительная (даже не альфа)версия VB7, входящая
в состав новой Вижуал Студии.
Микрософт позиционирует этот продукт следующим образом :
- Visual Basic - продуктивный инструмент разработки приложений
- Visual C++ - наиболее полный и мощный (power) инструмент
- Visual InterDev - Инструмент для создания WEB приложений
Основной целью выпуска VS7 было декларировано: "упрощение создания
WEB приложений серьезного уровня (уровня предприятий)" Итак, WEB теперь
тоже находится в сфере интересов программистов на Visual Studio. Visual
InterDev является частью интергрированной среды. Естественно, будет
работать HTML IntelliSense (подсветка синтакстиса функций, методов
и свойств) и завершение ввода тэгов.
По сведениям Микрософт 90 процентов web программистов используют
также VBScript, соотвественно VI 7 будет поддерживать все VB-языки.
Был продемонстрирован новый VB menu editor. Участники VBITS в Сан-Франциско,
кто "поторогал" новый редактор единодушны в своем мнении - новый редактор
много лучше предыдущего и наконец "сделан правильно". Теперь создание
меню может быть выполнено визуально - путем перетаскивания MainMenu
контрола на форму, и выбора его свойств.
Что же еще:
Новая версия OptionExplicit, названная "OptionStrict," Эта опция требует
строгого использования типов.(По моему давно пора) Наследование визуальных
характристик, больше похоже на user interfaice теперь работает и для
контролов
Осталось неясным, как WebClasses будут поддерживаться в VB7. Mendlen
обьяснил это тем, что WebClasses - its "generic technology." Не было
показано, так же, как будет поддерживаться синхронизация между потоками.
По прежнему покрыта мраком дата выхода Visual Basic 7 и Visual Studio
7 Microsoft предпологает выпустить альфа-весию летом, а бетту - осенью.
По результатам обсуждения в группах я вычитал в адрес VB7 следующее:
- можно будет создавать консольные приложения MS по прежнему рекомендует
использовать VC++ для этого, однако VB сможет создавать NT сервися,
причем темплэйт для этого будет включен в поставку.
- вы получите больший контроль над процессом линковки. Линковка многоязычых
модулей станет обычным делом
- будут добавлены некоторые новые опции для оптимизации. Что-то типа
поддержки новых фич процессоров.
- наконец, начтоящее наследование. Причем будет поддерживаться наследования
компонентов, для которых у вас есть исходные коды на VB или VC++.
Откомпилированные компоненты уже не смогут быть унаследованы.
По материалам превью VB7 на VBITS Chicago.
Хорошая новость - теперь VB7 сможет использовать Windows Foundation
Classes (WFC)
VB 7 обещает стать объектно - ориентированным языком, в полном смысле
этого слова. Несколько слов об этих возможностях:
Constructors: Когда объект создается - весьма неплохо иметь
вохможность передать ему некоторые данные для инициализации. Сейчас
это невозможно, и вы вынужденны создавать специальные инициализационные
методы, и после создания их вызывать (я, например этим сильно недоволен).
В VB 7 конструкторы обьетов смогут принимать параметры, это упростит
жизнь простым программистам :-)
Encapsulation: Идея - вы можете создать ряд процедур(методов
или свойств) Другой код может использовать эти методы, абсолютно не
вдаваясь в подробности, что происходит внутри. Этот код просто внедряется
в проект
Free-threaded: Многопоточность - это комплексная концепция.Free-threading
базируется на идее иметь возмоможность выполнять более одного потока
в одно время. Например, печать документа в фоне, пока пользователь
набирает новый документ. Free-threaded очень важен для создания масштабируемых
server-side компонент, так же он может быть полезен и при создании
интерактивного юэер - интерфейса.
Inheritance: Наследование - Куча копий сломано по этому поводу
- вкратце - возможность использования свойств и поведения чужого объекта,
возможность расширения поведения этого объекта. Я могу создать объект
Товар, на основе его создать объект Пищевой товар, и Промышленный
товар. Оба будут наследовать свойства и поведение от объекта Товар.
При этом в любой момент вы можете расширить или изменить поведение
наследующего объекта.
Initializers: Сегодня в VB вы объявляете переменные и потом
присваиваете им значения - т.е. 2 строки кода. Инициализаторы позволяют
декларировать и присваивать значения в одном стэйтменте.
Object-based: Это сравнительно легко для любого языка - называться
object-based. Можно назвать так любой язык легко взаимодействующий
с объектами. Visual Basic имеет такую функциональность начиная с третьей
версии, а сейчас (vb6) - DAO objects, ActiveX контролы, RDO, ADO и
многие другие.
Object-oriented: Для того, чтобы называться объектно-ориентированным,
язык должен удовлетворять трем критериям:
1- Он должен поддерживать инкапсуляцию(encapsulation). VB делает это
с 4 версии
2 - Обязн поддерживать наследование(inheritance). VB 7 будет иметь
полноценное наследование.
3 - Ну и поддержка полиморфизма(polymorphism). В VB это работает с
4 версии. Итак, в 7 версия будет вполне удовлетворять этим критериям.
Overloading: Объекты частo выполняют одинаковые действия
с похожими типами данных. Например, требуется добавить в обьект Заказ
элемент Продукт и элемент Сервис. Легко, добавляем методы AddService
и AddProduct в объект Order, и готово. Используя overloading мы можем
использовать метод Add для каждого случая, позволяя VB автоматически
вызывать правильный метод в зависимости от передаваемых данных.
Overriding: Когда мы используем наследование, наш новый класс
получает все методы от родительского класса. Однако может быть необходимим
изменить какие либо из этих методов.Вы можете Переписать эти методы
используя Overriding В тоже время VB7 будет позволять импользовать
и оригинальный метод родительского объекта, используя ключевое слово
MyBase (MyBase.methodname).
Polymorphism: Просто возможность иметь 2 различных объекта,
разного типа. При этим, каждый из них может может поддерживать одинаковые
методы. Это позволяет нам писать код, вызывающий нужный метод в зависимости
от типа объекта, используемого в данный момент.
Shared Members: По другому(в С языке) называемый статический
член класса, - метод или переменная, одинакого доступная для всех
экземпляров класса. Каждый порожденный объект, базирующийся на данном
классе будет иметь доступ к такой переменной или методу. Таким манером
легко создавать счетчики экземпляров класса
Structured Exception Handling: Обработка исключений. Взамен
древнего, и нередко абсолютно негибкого On Error Goto выражения, мы
имеем новую структуру для обработки ошибок. Это блок, содержащий Try,
Catch, Finally ключевые слова. Код между Try и Catch является защищенным,
и если ошибка случается выполняется Catch блок. После выполнения Catch
блока выполняется код из Finally блока. Собственно, это стуктура,
принятая во всех современных языках.
Type Safety: Visual Basic сегодня преобразовывает типы автоматически.
Нередко эти приводит к странностям в поведении программы. Используя
type safety мы сможем заставить Vb избегать автоматического преобразования
типов. Хотя эти и заставит программиста думать перед присвоением переменной
одного типа другому, но при этом позволит избежать ошибок.
User Interface Inheritance: Наследования в языке недостаточно!
VB 7 будет включать наследовние форм. Это означает, что вы сможете
создать шаблон формы, положить на нее тулбар, лого, установить цвета,
и после этого создавать остальные формы, базируясь на этой, базовой.
Все последующие будут наследовать внешний вид и код. И, главное -
изменения в базовой форме будут автоматичемки приводить к изменениям
в дочерних. Останется только перекомпилировать проект. Неплохо, а?!
Так же из нового: WebForms и Web Services, не буду об этом
писать, так как самому пока не вполне ясна функциональность этих элементов.
наверх
BalloonMessage for Microsoft Agent реализует диалог программы с
пользователем, используя при этом технологию Microsoft Agent. OCX реализует три
типа диалоговых окон: InputBox, MsgBox и MsgLabels.
Автор: Шатрыкин Иван. Соавтор: Павел Сурменок.
У Вас есть исходник проги, которая тырит инфу биоса функцией GetMem ! Но вот эта функция, понятное дело, не пашет в 2000 маздае ! Как ее заставить работать, или какие есть аналоги этой функции, работающие на всех маздаях ???
Народ, подскажите кто-нить, почему API функция ExitWindowsEx не завершает работу или не выключает комп, а завершает сеанс данного юзера и предлагает войти под новым именем ?
Подскажите где можна скачать MSDN для VB6, бея справочника долго нужно париться над ним.
А можно ли менять прозрачность всех окон в системе с помощью API? Если да, то как??
А как с помощью API вызвать диалоговое окно выбора цвета и сохранить новые значения??
Я пишу софтину на VB (проигрывание явуковых MIDI файлов). Я подключаю к проекту библиотеку Windows Media Player. объявляю глобяльную переменную:
Мне нужно ияменить громкость воспроияведения. Я пишу: MP.volume=Value и получаю сообщение об ошибке. Может кто-то подскаяать, что нужно сделать, чтоб софтина яаработала?
Подскажите пожалуйста! Как на VB установить шрифты в систему. Пробовал использовать API функцию AddFontResource. Она устанавливает вибраний шрифт в систему, только после перезагрузки шрифт удаляется из системы.
Есть переменная WindowsDirectory и я всегда ее использовал для временных файлов, так стабильнее чем Temp но вдруг мне пришло письмо что моя программа не работет в W2k Server так как он не распознает эту переменную и пишет файл куда хочет, а когда его нужно прочитать то читает тоже откуда хочет и эти папки не сходятся. Отсюда информация не теряется, а просто пишется в одно месте, а читается из другого места - т.е. файла нулевого!
P.S. В W2K Proffesional все работает!
В программах 1С очень удобные отчеты. можно ли их прицепить к своей программе на VB. и можно ли их таскать со свой программой (без установки всего предприятия). Я пробовал добавить ссылку на Moxel.dll, ругается.
Знаешь, я видел на сайте Микрософта в разделе Office Extensions (конкурс там такой) модуль, который позволяет читать данные 1C в Excel. Сходи, погляди, может быть он там еще есть? Думаю, что должно помочь.
В программах 1С очень удобные отчеты. можно ли их прицепить к своей программе на VB. и можно ли их таскать со свой программой (без установки всего предприятия). Я пробовал добавить ссылку на Moxel.dll, ругается.
По-моему это просто надстройка над Crystal Reports. Поставь их себе и попробуй поработать.
1. При установке любой программы (после её закабинечивания мастером упаковки) пишет "неверные линии" в файле Setup.LST как раз там, где указан путь распаковываемых файлов. После сообщения о фатальной ошибке установка ПО прекращается. Пришлось выделить 600 метров диска для установки ещё одной версии Windows SE и VB5. Последняя создаёт нормальную установку, но она не делает кабинетов а файлы *.EX_. Может у кого-нибудь ещё была такая проблема?
2. Как сделать, что прогамма, выполняющая например 2+2 не занимала 5-7 Мб установки.
Перед упаковкой файлов зайди в Настройка>Панель управления>Язык и стандарты и переключи Региональные настройки на Английский. После перезапуска компа спокойно упаковывай файлы. Затем можешь вернуть все на место. Инсталятор будет работать прекрасно.