|
Вызов API
|
|||
---|---|---|---|
#18+
В vba можно описать api-функцию например так: Код: vbnet 1.
Возможно ли таким способом описать свою функцию из произвольной динамической библиотеки (mylib.dll) ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2015, 15:06 |
|
Вызов API
|
|||
---|---|---|---|
#18+
apiz, Можно. Только библиотеку либо надо будет регистрировать, либо указывать до неё путь, а не только имя. Плюс к этому имеет значение язык, на котором эта библиотека написана и поддерживает ли она подобные вызовы. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2015, 15:25 |
|
Вызов API
|
|||
---|---|---|---|
#18+
ничего регистрировать не нужно (за исключением ньюанса, ниже) ! достаточно задать имя dll с путём к ней если путь не задан, то VB по умолчанию ищет заданную библиотеку - в текущ.каталоге - в каталоге Виндовз - в системном каталоге Виндовз - во всех каталогах, указаных в PATH всегда в этом порядке ньюанс: регистрировать нужно dll написанные на VB, потому как они, по сути и не являются "библиотеками динамич.компоновки", а являются ActiveX-объектами, доступ к которым осуществляется не через Declare ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2015, 15:37 |
|
Вызов API
|
|||
---|---|---|---|
#18+
Declare,ничего регистрировать не нужно как бы я вроде тоже самое написал: The_Pristбиблиотеку либо надо будет регистрировать, либо указывать до неё путь Declare,ньюанс: регистрировать нужно dll написанные на VB The_PristПлюс к этому имеет значение язык , на котором эта библиотека написана ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2015, 15:48 |
|
Вызов API
|
|||
---|---|---|---|
#18+
The_Pristкак бы я вроде тоже самое написал: The_Pristбиблиотеку либо надо будет регистрировать, либо указывать до неё путь не скажите :) правильно так: что бы использовать ресурсы dll через Declare, нужно либо указать до неё полный путь, либо поместить эту dll в один из предопределённых каталогов (curdir, windir, system, paths) никакого "регистрировать" те библиотеки, которые нужно регистрировать, через Declare использовать, имхо, просто не получится их нужно "цеплять" в референсах проекта ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2015, 15:59 |
|
Вызов API
|
|||
---|---|---|---|
#18+
Declare,правильно так: что бы использовать ресурсы dll через Declare, нужно... Согласен ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2015, 16:20 |
|
Вызов API
|
|||
---|---|---|---|
#18+
Declare, Для VB6 обычно в реестре регистрируются DLL в виде COM-сервера (ActiveX). Вызов методов возможен как через позднее связывание, через CreateObject или через ранее - установить ссылку на библиотеку типов. Другие DLL - это библиотеки с соглашением вызовов StdCall, их функции обычно вызывают через объявление через Declare. В интернете много примеров и необычного использования, а именно: - Вызов функций используя LoadLibrary, GetProcAddress, CallWindowProc, FreeLibrary - Вызов функций с соглашением Cdecl - и много другого что требует более гибкой работы. Если нужно могу приложить то что имеется. Автору, если функция Ваша, как я понял из описания, библиотека написана в чем? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2015, 16:21 |
|
|
start [/forum/topic.php?fid=61&msg=38897925&tid=2173598]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 136ms |
0 / 0 |