Показать сообщение отдельно
Старый 22.02.2012, 11:29
wormworm вне форума Посмотреть профиль Отправить личное сообщение для wormworm Найти все сообщения от wormworm
  № 1  
Ответить с цитированием
wormworm

Регистрация: Feb 2012
Сообщений: 2
По умолчанию Не подключается DLL через Zinc

Я уже совершенно не врубаюсь! Написал самую простую программу и ничего не работает! Помогите пожалуйста, буду очень признателен!
Вот код DLL:
Цитата:
#define _DLLMAINCPP

#include "stdafx.h"
#pragma hdrstop

#ifdef _MANAGED
#pragma managed(push, off)
#endif

BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}

#ifdef _MANAGED
#pragma managed(pop)
#endif

#include <string>
#include <iostream>
using namespace std;

bool GetConfPNG(){return true;}
Видите? Одна простейшая функция...

Код AS2:
Код AS1/AS2:
stop();
var dllPath:String = "mydll.dll";
 
btn.onRelease = function()
{
	StartBtn = !StartBtn
 
	if(StartBtn == true)
	{
		var mydll = new mdm.DLL(dllPath)
		if (!mydll.isLoaded) 
		{
			out.text = "Dll load failed!"
			mdm.prompt("Dll load failed!")
		}
		else 
		{
			out.text = "Dll loaded!"
			mdm.prompt("Dll loaded!")
		}
 
		mydll.clear();
		var myReturn = mydll.call("boolean", "GetConfPNG")
		out.text += newline + "myReturn = " + myReturn
	}
	else
	{
		out.text = ""
	}
}
При компиляции в mdm Zinc подключаю mdm_dll. По нажатию кнопки получаю:
Цитата:
Dll loaded!
myReturn = null
Меняю var dllPath:String = "mydll.dll"; на какой-нибудь "bla-bla.dll" результат тот же! Dll loaded! Да как? ее не существует! Где мой true? Помогите пожалуйста!

P.S.: Функция объявлена на Экспорт в mydll.h, но и extern "C" __declspec(dllexport)bool GetConfPNG(){return true;} не меняет ситуации.


Последний раз редактировалось wormworm; 22.02.2012 в 12:16.