|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.03.2012, 13:11 | #1 |
Регистрация: 12.05.2009
Сообщений: 5
|
Error 424 - Object required, при вызове процедуры из DLL
Приветствую!
Я пытаюсь вызвать процедуру из VB ActiveX dll, но появляется Error 424 "Object required" Мой код: Код:
MyClass - класс в template20 Drawvertical1 - процедура в template20.Myclass Что может быть не так? |
21.03.2012, 14:02 | #2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
На какой строке ошибка?
Если в коде оставить только эту строку - тоже ошибка будет? Код:
|
21.03.2012, 14:33 | #3 |
Регистрация: 12.05.2009
Сообщений: 5
|
Спасибо за ответ!
Несколько минут назад я уже разобрался этим, когда понял, как делать debug в Dll. Расскажу для будущих поколений: надо в references Vba проекта отключить dll, потом в VB проекте запустить Run->Start With Full Complie, затем в references VBA проекта через browse подключить файл VB проекта. Тогда Debug можно будет производить сразу в двух средах. Дополнительный вопрос по горячим следам: DLL не может распознать объект UserForm1 из VBA проекта. Правильно ли я понимаю, что прямое обращение к конкретному объекту из DLL невозможно и надо объект передавать в качестве параметра процедуры? Спасибо! |
21.03.2012, 20:26 | #4 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
(иначе как DLL узнает, где искать эту форму) Можно, конечно, параметром в DLL передать и книгу, и приложение Excel, - но код заметно усложнится. Вообще, я бы на вашем месте не передавал бы UserForm в DLL Управлять UserForm из DLL, как мне кажется, - задача достаточно трудоемкая. Почему не написать весь код в UserForm? Почему не добавить UserForm в состав DLL? (я как-то однажды делал так DLL для прогресс-бара и типичных функций, чтобы использовать это в Excel, и код защитить. Потом раздумал - слишком много времени тратится на разработку в двух средах программирования) |
|
21.03.2012, 21:18 | #5 |
Регистрация: 12.05.2009
Сообщений: 5
|
Как оказалось, я всё усложнил, мне нужно было всего лишь получить Caption из TextBox, и я его передал через обычный строковый параметр)) Просто вышла небольшая паника.
Всё, все вопросы исчерпаны, спасибо! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка при подключении к базе данных Object reference not set to an instance of an object. | lowercase | ASP.NET | 1 | 20.11.2011 22:48 |
System error code 5 при вызове AssignProcessToJobObject | Effort | Общие вопросы Delphi | 1 | 16.07.2011 00:25 |
Type Missmath при вызове процедуры находящейся в модуле. | iBuTTHead | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 11.12.2010 18:52 |
Record, object or class type required | @mazonk@ | Помощь студентам | 0 | 07.06.2009 13:03 |
потеря параметров при вызове формы из dll... | Roof | Общие вопросы Delphi | 4 | 22.08.2008 22:08 |