最近我想开始用 Visual C++ Express 2010 构建一个 .dll 数学库。
我想将 .dll 用作 BOTHExcel VBA
和C#
应用程序的库参考。我希望它可以在两个32bit/64bit
窗口中工作。.dll 也应该能够在构建后被其他 PC 使用。
从使用 Win32 项目开始我是否正确?(似乎我不能
ATL / MFC
在 Express 版本中使用)我是否需要在 .dll 中为 VBA 和 C# 指定 2 组不同的接口来加载函数?(VBA 需要使用 __stdcall)
在其他 PC 中使用 .dll 的任何部署设置?(需要任何 regsvr32 cmd 进程吗?)
制作 C++ DLL 以导出类的任何初学者示例?(例如 VBA / C# 可以从这个 dll 实例化一个新类)...
因为我不确定是否可以在 C++ .dll 中使用以下 .header 文件在 VBA/C# 中实例化 ClassA 和 ClassB:
#pragma once
#ifdef DLLDIR_EX
#define DLLDIR __declspec(dllexport) // export DLL information
#else
#define DLLDIR __declspec(dllimport) // import DLL information
#endif
class DLLDIR ClassA
{
public:
void AMethod1();
void AMethod2();
};
class DLLDIR ClassB
{
public:
void BMethodi();
void BMethodii();
};