DLLを外部から呼び出し可能なように構成したい
VisualStudioでTestという名前でプロジェクトを作成し,dlltest.cppとdlltest.hに下記のように書き込み,x64,Releaseでビルドし,作成されたTest.dllというファイルをunityプロジェクトのAssets/Pluginsにコピーしました.unityでシーン上に空のオブジェクトを作成し,そこに下記に示すDllという名前のスクリプトを入れ実行すると,
EntryPointNotFoundException: Return
Dll.Start () (at Assets/Dll.cs:13)
とエラーが出てしまいます.
自分では何が原因なのか皆目見当がつきません.解決策が分かる方がおりましたら教えてください.
ちなみに使用しているのはVisualStudio2017,unity2017 3.0f3 Personal(64bit) です.
dlltest.cpp
#include"dlltest.h"
int Return() {
return 10;
}
dlltest.h
#pragma once
extern "C" {
int Return();
}
Dll
using UnityEngine;
using System.Runtime.InteropServices;
using System;
public class Dll : MonoBehaviour {
[DllImport("Test")] private static extern int Return();
// Use this for initialization
void Start () {
Debug.Log(Return());
}
}