创建了一个类项目,名为TEST,
在TEST项目中增加了一个RYDA.cs,代码如下:
using System.Data.SqlClient;
using System.Data;
using System.Xml;namespace XNH_InterFace
{
public class RYDA
{
public static string GRXX(string XML)
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.LoadXml(XML);
XmlNode x = xmldoc.SelectSingleNode("//GRXX");
string STR_BH = (x.SelectSingleNode("BH")).InnerText;
string STR_XM = (x.SelectSingleNode("XM")).InnerText;
string STR_XB = (x.SelectSingleNode("XB")).InnerText;
string STR_XMLInfo= STR_BH +"|"+STR_XM +"|"+STR_XB;
return STR_XMLInfo;
} }
}
-------------------------------------------------------
然后我编译成TEST.DLL文件接着如何才能在PB中调用呢?希望能给详细的代码,感谢!
在TEST项目中增加了一个RYDA.cs,代码如下:
using System.Data.SqlClient;
using System.Data;
using System.Xml;namespace XNH_InterFace
{
public class RYDA
{
public static string GRXX(string XML)
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.LoadXml(XML);
XmlNode x = xmldoc.SelectSingleNode("//GRXX");
string STR_BH = (x.SelectSingleNode("BH")).InnerText;
string STR_XM = (x.SelectSingleNode("XM")).InnerText;
string STR_XB = (x.SelectSingleNode("XB")).InnerText;
string STR_XMLInfo= STR_BH +"|"+STR_XM +"|"+STR_XB;
return STR_XMLInfo;
} }
}
-------------------------------------------------------
然后我编译成TEST.DLL文件接着如何才能在PB中调用呢?希望能给详细的代码,感谢!
参考1
http://www.cnblogs.com/gxlinhai/archive/2007/12/19/1006067.html
2
http://topic.csdn.net/t/20051213/15/4456730.html
3
http://topic.csdn.net/t/20021104/19/1148027.html
C#编写的库和其它非托管程序交互的一般方法是:
1.程序集必须是强签名的;
2.程序集已安装到系统的GAC;
3.要调用的类是public的且标记为Comvisible
4.程序集已经用regasm之类的工具注册 仔细看下
http://topic.csdn.net/u/20100320/12/e48da9ce-7ef0-41a6-a47c-8a4610dfa811.html
我在网上找了些资料,说用Regasm.exe注册一下DLL文件,就可以让其他非.NET程序用COM方式进行调用了?是这样么?这里说的DLL文件,是不是就是用 C#常规生成的DLL文件?
注册方法如下:
http://msdn.microsoft.com/zh-cn/library/tzat5yw6(VS.80).aspx
1.程序集必须是强签名的;
2.程序集已安装到系统的GAC;
这2条是什么意思?如何实现的?3.要调用的类是public的且标记为Comvisible
我一楼给的类代码是不是符合public?Comvisible这个是不是只要在AssemblyInfo.cs里把
[assembly: ComVisible(true)]这样就可以?其他地方无需修改?
gacutil是将DLL加入到全局缓存里的工具
strong name
http://blog.csdn.net/jemmy/archive/2008/03/14/2181026.aspx
http://www.cnblogs.com/jecray/archive/2007/04/15/strongname.html