我正在尝试使用Rightfax API RFCOMAPI.DLL自动化传真。我已经详细地按照说明详细说明,似乎无法使其正常工作。
RightFax 10.6安装在机器上。我按照指示复制了rfcomapi.dll,rfwin32.dll,rfi32rpc.ndr,rfi32rpc.dll和rfstat.dll并注册了rfcomapi.dll。
我还确保在计算机上安装了Microsoft VC ++ 2008,2010和2012可再发行组件。
使用我在此处(以及其他多个网站上)找到的示例代码,我收到错误。
哦,我登录的用户有一个RightFax帐户。
这是代码块,用我们的rightfax服务器替换服务器名称等。我也从cpNamedPipes更改为TCIP但没有成功。就好像它甚至没有看到图书馆,即使它显然在那里并且注册成功。
RFCOMAPILib.FaxServerClass faxserver = new RFCOMAPILib.FaxServerClass();
faxserver.ServerName = "ServerName";
faxserver.Protocol = RFCOMAPILib.CommunicationProtocolType.cpNamedPipes;
faxserver.UseNTAuthentication = RFCOMAPILib.BoolType.True;
faxserver.OpenServer();
RFCOMAPILib.Fax fax = (RFCOMAPILib.Fax) faxserver.get_CreateObject(RFCOMAPILib.CreateObjectType.coFax);
// set up your 'fax' object the way you want it, below is just some sample options
fax.ToName = "John Doe";
fax.ToFaxNumber = "4255551111";
fax.ToVoiceNumber = "4255550000";
fax.ToCompany = "ACME";
fax.FromName = "My Company";
fax.FromVoiceNumber = "4255552222";
fax.Send();
这是我的错误:
在'('。 在行:1字符:71 + rfcomapilib.faxserverclass faxserver = new rfcomapilib.faxserverclass(<<<<<<<<<<<<
非常感谢任何帮助或建议!!
谢谢
答案 0 :(得分:0)
RFCOMAPILib.dll使用接口“ FaxServer”和互操作类型“ FaxServerClass”。
由于无法嵌入互操作类型,因此您需要使用适用的接口。
替换
FaxServerClass faxServerClass = new FaxServerClass();
使用
FaxServer faxServer = new FaxServer();
此外,请确保在完成传真服务器后将其关闭
try
{
//... setup fax server ...
faxServer.OpenServer();
//... do your stuff ...
}
finally
{
faxServer.CloseServer();
}