所以我遇到了这个问题。
C#
x= [ 1 2; 3 4]
pth = 'C:\data\tst1.xls'
Ncol = size(x,1)
for i=1:size(x,2)
xlswrite(pth,x(1,:)',['A1:A' num2str(Ncol)]);
xlswrite(pth,x(1,:)',['B1:B' num2str(Ncol)]);
end
的Python
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using RGiesecke.DllExport;
class Test
{
[DllExport("add", CallingConvention = CallingConvention.Cdecl)]
public static int TestExport(int left, int right)
{
return left + right;
}
}
错误
import ctypes
a = ctypes.cdll.LoadLibrary('ClassLibrary1.dll')
a.add(3, 5)
我通过将构建定位为x86而不是任何CPU提供的答案来解决它。但是,当我的计算机/操作系统是64位时,我不明白为什么它必须是x86。
64位dll
时出错WindowsError:[错误193]%1不是有效的Win32应用程序
简单地说。当我瞄准x86架构并构建库时,它可以工作。但是,当我瞄准x64架构时。它抛出一个Windows错误
我的操作系统是64位。 Python 2.7.9 64位。