Ваши любимые инструменты и советы Visual Basic 6.0

Это несколько связано с аналогичным сообщением , но это сообщение было Visual Studio 6 в целом, и многие предложения не применимы к Visual Basic 6.0.

Предлагайте или проголосуйте за инструменты / советы. Пожалуйста, один инструмент / подсказка за сообщение, чтобы каждый мог проголосовать за них по отдельности. Включите краткое описание того, что делают инструменты.

Включить колесо мыши в VB6:

Microsoft: включить колесо прокрутки мыши

Инструменты MZ.

Свободно. Множество дополнительных инструментов для IDE, таких как «Любимые процедуры» и «Добавить процедуру обработки ошибок для prodedure» и многое другое.

http://www.mztools.com/v3/mztools3.aspx

После установки VB6 я всегда делаю эти настройки в Tools-Options.

  • Отключите автоматическую проверку синтаксиса на вкладке «Редактор». Вы не хотите, чтобы ящики сообщений при вводе синтаксической ошибки – вам просто нужно, чтобы строка проблем была показана красным цветом, чтобы вы могли исправить ее позже.

  • Включить обязательную декларацию переменных на вкладке «Редактор». Не думай, просто сделай это.

  • Отключите компиляцию по требованию на вкладке «Общие». Вы хотите, чтобы вас сразу же сообщали о синтаксических ошибках, когда вы запускаете свой код, а не только, когда на самом деле вызываются хитроумные подпрограммы.

  • EDIT: запрос на сохранение изменений при запуске программы на вкладке «Окружающая среда». (Спасибо wqw за напоминание мне в комментариях.)

  • Установите « Ловушка ошибок» на «Разрыв необработанных ошибок» на вкладке «Общие». Собственно, это личное предпочтение – но вы должны выбрать настройку, которая вам подходит. Надеюсь, вы разработали страtagsю обработки ошибок для программы VB6?

  • У меня есть ЖК-экран, а цвета по умолчанию работают не очень хорошо, поэтому я меняю их на более легкие. Я также использую шрифт Consolas . В любом случае, мой код VB6 выглядит в двадцать первом веке 🙂

Удивительно, как многие люди не используют кнопки IDE для комментирования и раскодирования блоков исходного кода. Они находятся на панели инструментов « Редактировать» и выглядят следующим образом: alt text http://img231.imageshack.us/img231/1949/vb6commentbuttons.gif . Щелкните правой кнопкой мыши в незанятой части области панели инструментов и отметьте параметр «Редактировать», чтобы отобразить панель инструментов.

Я когда-то посещал курс «Advanced VB6», где инструктор не знал об этих пуговицах.


EDIT: у AngryHacker есть способ связать клавиши быстрого доступа с этими кнопками, чтобы комментировать и раскомментировать блоки кода при нажатии клавиши.

Я не могу поверить, что никто еще не опубликовал Hardcore Visual Basic Брюса МакКинни (теперь он бесплатный онлайн на mvps.org) ! ОК, это книга, а не часть программного обеспечения, но она расширяется до настоящего рог изобилия инструментов и советов.

SmartIndenter выполняет все автоматические отступы. Он делает одно, и это действительно хорошо. И это бесплатно.

http://www.oaltd.co.uk/Indenter/Default.htm

SmartIndenter http://img151.imageshack.us/img151/1392/screencaps1.jpg

Веб-сайт vbAccelerator . У этого есть много прекрасных примеров и свободных средств управления с полным источником. Сайт не обновляется через несколько лет, но он все еще работает, и я все еще вернусь к нему, работая в VB6.

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

Решение?

Используйте VarPtr для получения адреса массива, передайте адрес CopyMemory, чтобы получить структуру SafeArray для массива, если структура SafeArray указывает 0 измерений, массив не инициализирован.

EDIT благодаря Лэнсу для хорошей ссылки с примером

http://vbnet.mvps.org/index.html?code/helpers/getarraydims.htm

Весь сайт mvps.org здесь

Я рекомендую источник с одним стопом Карла Петерсона и VBnet Рэнди Берча (который не имеет ничего общего с VB.NET) и проект замены Common Controls.

Дизайн шаблонов GoF. Хотя для VB6 не кажется специфичным тот факт, что большинство шаблонов основаны на реализации интерфейса и агрегировании объектов (в отличие от наследования), что делает его хорошо подходящим для использования с VB6. Об этом они говорят на страницах с 16 по 18 и суммируют это в одном заявлении. Программа для интерфейса, а не импликация. Если есть одна вещь, которая хорошо работает с VB6 и COM, это интерфейсы дескриптора.

Make My Manifest может создавать Reg-Free COM-манифесты (забрасывая «Стили» по мере необходимости и т. Д.). Это позволяет XCopy развертывать множество VB6 EXE для WinXP или более поздних версий.

Больше никаких «зависимых» опасений или DLL Hell!

VB6 IDE не помнит вашего предпочтения для максимизации окон кода. Чтобы начать работу с максимальным окном кода VB6, установите этот раздел реестра строки:

[HKEY_CURRENT_USER \ Software \ Microsoft \ Visual Basic \ 6.0]

“MdiMaximized” = “1”

Ознакомьтесь с http://angryhacker.com/blog/archive/2008/05/01/vb6-swiss-army-knife.aspx

У него есть большинство инструментов, которые я использую, когда мне приходится вникать в VB6, а также описание того, что они делают. В дополнение к упомянутым здесь инструментам он также имеет следующее:

PDSA Property Creator

Добавлена ​​надстройка ADO Stob Proc Generator

Мастер надстройки classа коллекций

Matt Curlands Power VB и инструменты VBoost, которые появились с ним, особенно редактор библиотеки типов.

Просто следите за техникой, не соответствующей DEP.

Надстройка vbAdvance теперь бесплатна.

vbAdvance – это надстройка Visual Basic, которая дает вам доступ к расширенным функциям сборки и многим функциональным возможностям IDE. Создавайте консольные приложения, создавайте стандартные библиотеки DLL, которые экспортируют функции, создают точку входа DllMain в свои библиотеки DLL, компилятор Manifest XP для стилей XP, сервер терминалов и т. Д.

CodeSmart 2009 для VB6

Я не пробовал это.

http://www.axtools.com/products/cs2k3vb_screenshots.htm

Я обнаружил много вещей, когда впервые изучал, используя мастеров, чтобы создавать формы / небольшие приложения, а затем изучать код, который они выводят.

Один отличный инструмент, который есть и я использовал, называется CodeFixer. Кажется, я впервые наткнулся на CodeFixer .

Это даже с открытым исходным кодом. У меня был небольшой контакт с автором, Роджером Гилкристом, и он, похоже, все еще работает над этим в его, конечно, ограниченном, свободном времени.

Обработка ошибок VB6 отстой. Поэтому я принял эти шаблоны, чтобы упростить его:

Блок Try-Catch:

'Try On Error Goto catchX ... 'Catch catchX: if err.number then ... resume resumX resumX: end if On Error Goto outside_catch_label_name 'End Try 

Включая трассировку стека в ошибках:

 sub rethrow(byval source as string) Err.Source = Err.Source & vbNewLine & vbTab & "@ " & Source Err.Raise Err.Number, Err.Source, Err.Description end sub sub some_sub: on error goto throw ... throw: if err.number then rethrow("some_sub") end sub 

Я еще не пробовал это сам, но CodeShine – это дешевая надстройка для рефакторинга для VB6. По-видимому, он может использовать метод рефакторинга полезного экстракта .

Я должен прекратить тратить время на это и загрузить бесплатную пробную версию, чтобы попробовать.

Анализатор проекта Aivosto http://www.aivosto.com/project/project.html

Спайдер-флюс

Замена classа коллекции из Spider Eye под названием Spider Eye Flexbag является абсолютной необходимостью. Его 100% лучше, чем classы коллекций, которые поставляются с VB и его ослепительно быстро по сравнению с оригинальными коллекциями. Коллекция Flexbag была написана Гэри Вишневским из «Известной домашней страницы« Карл-н-Гэри ».

К сожалению, веб-сайт Spider Eye, похоже, не имеет ссылки на Flex Bag на данный момент, но я уверен, что если вы обратитесь к ним, они с удовольствием выберут что-то для вас. Если вы вообще делаете какую-либо коллекцию, то это стоит того.

Поиск AVE-кода

Поиск AVE-кода удобен, поскольку функция Find в среде VB6 IDE не может быть доверена. AVE Code Finder также намного быстрее, чем встроенный Find. Это было написано Jarek Zwierz из http://www.ave.com.pl, но сайт, похоже, больше не существует, поэтому версия, с которой я связан, находится на VB2TheMax.

VB6 Credits Пасхальное яйцо, в котором перечислены команды разработчиков 🙂

Чтобы показать программные кредиты VB6, создайте кнопку «О программе» на стандартной панели инструментов и переименуйте ее подпись в «Показать кредиты VB». Вот несколько деталей:

  1. Щелкните правой кнопкой мыши на панели инструментов и выберите «Настроить»,
  2. На вкладке «Команды» выберите категорию «Справка»
  3. Перетащите команду «О Microsoft Visual Basic» (правые windows диалогового windows) до конца стандартной панели инструментов.
  4. Не закрывая диалоговое окно «Настроить», щелкните правой кнопкой мыши на только что созданной кнопке и измените ее имя на «Показать кредиты VB»,
  5. Закройте «Настроить» и нажмите новую кнопку.

Бонусные баллы за определение знаменитых имен .

Я купил Codejock SuitePro для своей компании. У них есть много компонентов, которые будут использоваться в VB6 и C ++, включая поддержку XAML в элементах управления, что является легкой версией WPF.

  • Каков наилучший вариант отображения текста Юникода (иврит и т. Д.) В VB6
  • Отмена длительного процесса в VB6.0 без DoEvents?
  • Как определить, инициализирован ли массив в VB6?
  • У VBA есть структура словаря?
  • Лучшая страtagsя перехода с VB6 на .NET
  • Сравнение инструментов сравнения для визуального базового 6.0
  • Внедрение String.Format () в VB6
  • Обучение VB6
  • Остановить Visual Basic 6 от замены моего корпуса
  • Получить / отправить в веб-службу RESTful
  • Использовать stream в программировании в vb6
  • Давайте будем гением компьютера.