我知道我可以将.NET dll注册为程序集并在我的sql查询中调用函数。但是对于使用c ++或c ++ / cli dll来达到同样的目的,我得到了令人困惑的陈述。
以下链接描述了一种方法:
http://msdn.microsoft.com/en-us/library/vstudio/hc912f03(v=vs.120).aspx
然后我收到以下错误消息:
程序集“libname”的CREATE ASSEMBLY失败,因为程序集“libname”格式不正确或者不是纯.NET程序集。无法验证的PE标头/本机存根。
另一个文档实际上声明只能使用纯.NET模块。
所以我想知道什么是真的,如果可能的话如何在SQL Server 2012上使用c ++ dll?
我尝试使用/ clr:safe编译的c ++ / cli包装器来包装我的c ++ dll,但没有成功。
答案 0 :(得分:0)
本文有一些关于创建dll的解决方法。创建c ++ dll后,会创建一个C#dll来包装c ++ dll:
https://lennilobel.wordpress.com/2014/01/29/calling-c-from-sql-clr-c-code/