2010-09-08 5 views
0

Мне была предоставлена ​​электронная таблица VBA, которая вызывает функции, написанные на VB6 и COM.VB6 Attach To Process - Com Exposed VBA

Может кто-нибудь указать:

  1. Как я могу найти расположение DLL/двоичный файл, который на самом деле VBA вызывает в КОМП звонки?
  2. Как подключить отладчик к VB и получить удар при вызове функции os.

Я родом из диез фона так действительно ценит помощь здесь

EDIT: У меня есть исходный код и нашел ссылку из Excel - Как я придаю VB6 отладчик Excel и получить удар на точке останова?

ответ

4

Чтобы узнать, что представляет собой файл библиотеки, вы открываете VBA IDE (обычно, нажимая Alt + F11 в приложении для хостинга) и переходите к Project-> References.
Если нет ничего интересного, вы хотите найти код VBA для звонков CreateObject, который предоставит вам ProgID с COM-объектов, которые вы можете найти в реестре.

Не имея исходного кода, вы можете отлаживать библиотеку VB6 так же, как отлаживать любое случайное приложение - на attaching the VS debugger.

+0

У меня есть исходный код. Я все еще не понимаю, как я могу подключаться от VB6 к работающему процессу. –

+1

@Chloe Затем загрузите исходный код в VB6, перейдите к свойствам проекта, вкладке «Отладка», убедитесь, что он говорит «Подождите, пока компоненты будут созданы», установите некоторые точки останова в коде и нажмите F5 для запуска проекта (IDE начнет ждать создания объектов). Затем попробуйте использовать объекты из своего приложения. – GSerg

+0

Помните, что это вызывается из VBA. Как VB узнает, когда будут созданы его объекты. У меня есть несколько копий двоичных файлов, на которые ссылается VBA. Я перехожу к свойствам проекта VBA и добавляю ссылку (если это так, в какой именно двоичный файл), чтобы я мог подключиться к процессу? –

Смежные вопросы