Модератор: BV


в dll
Public Function AAA() As String
Dim txt As String
txt = "Hello"
AAA= txt 'StrConv(txt, vbUnicode) ???
end function
при вызове
Private Declare Function AAA Lib "c:\EX1.dll" () As String

StrConv(txt, vbUnicode) ???












я читал про это, но в первом моем вложении она вызывает ( наобумпроцедура/функция, которая вызывается через CallWindowProc, обязана иметь 4 параметра

' .FileImage(CodeWriter) = &H52 ' push edx
' .FileImage(CodeWriter) = &HFF ' call [edx]
' .FileImage(CodeWriter) = &H11 .FileImage(CodeWriter) = &H75
.FileImage(CodeWriter) = &H2D .FileImage(CodeWriter) = &H75
.FileImage(CodeWriter) = &H2A





SLIM писал(а):1. Можно ли использовать библиотеку как обычную Native кроме как в VB?
SLIM писал(а):2. Если да, то что особого нужно сделать? (просто так через LoadLibrary и GetProcAddress не получается, вылетает)




SLIM писал(а):К слову. Через Declare в VB работает, через LoadLibrary, GetProcAddress, CallWindowProc в VB работает.

Хакер писал(а):По-поводу первого скриншота: подтвердить, что при LastError=998 истинно MyLib = 0. Иначе LastError ничего не значит.

Хакер писал(а):И не работает не в VB теми же методами?


#include "stdafx.h"
#include "windows.h"
int main(int argc, char* argv[])
{
HMODULE MyLib;
FARPROC pFunction;
MyLib = LoadLibrary(L"c:\\StandardDLL1.dll");
DWORD d = GetLastError();
if(MyLib)
{
pFunction = GetProcAddress(MyLib, "ff");
pFunction();
FreeLibrary(MyLib);
}
}Хакер писал(а):По второму: проверить то, что работает через Declare под VB в скомпилированном виде.

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5