delphi中有一个加密校验的CRC.dll,想在c#中调用它,老是报试图加载格式不正确的程序
[DllImport("DES.dll", CallingConvention = CallingConvention.StdCall)]
public static extern int DecFile(string s1, string s2, string s3); 其中s1,s2,s3分别为源文件路径全名,目的文件路径全名和密钥.是不是参数s1的路径在delphi中是带"/"的而c#是带"//"传入的?
各位有碰过这样的问题的吗? 请教!!
[DllImport("DES.dll", CallingConvention = CallingConvention.StdCall)]
public static extern int DecFile(string s1, string s2, string s3); 其中s1,s2,s3分别为源文件路径全名,目的文件路径全名和密钥.是不是参数s1的路径在delphi中是带"/"的而c#是带"//"传入的?
各位有碰过这样的问题的吗? 请教!!
解决方案 »
- C#window form写一个计算器有关技术求帮忙!谢谢
- 什么是隐式参数名?
- 【散分】求教timer组件更新界面问题
- 使用C#语言在WinForm中怎样做一个类似于QQ设置中的网络设置下的类型中的HTTP代理功能
- 手机软件课题,一起来
- 关于webBrowser中cookie的问题...
- windows 面板的问题怎么处理?用dataGridView可以吗?一个dataGridView 可以绑定多个dataTable吗?
- 提取子字符串的问题
- 初学者的问题??请求帮忙。。。多谢!
- c# 运算符在A类中重载后,怎样影响到B类中的运算符
- 麻烦,求DataGridView保存方案,在线等
- 关于水晶报表的问题,请各位大虾帮忙!!!
后来我改为
[DllImport("DES.dll", CallingConvention = CallingConvention.StdCall, EntryPoint = "EncFile", CharSet = CharSet.Auto)]
public static extern int DecFile(string s1, string s2, string s3);
这次不报错, 但结果是什么后没有,中断进去后发现返回-1. 而说明中只有返回0,1,1失败,0成功.接口的定义为
定义:Function EncFile(sSrcFileName, sDestFileName, sKeyFileName : String):Integer; stdcall;
功能:对带有CRC码的明文文件加密,成功则输出密文文件,否则返回 1,
注意:明文文件名称与密文文件名称应不相同。
输入:sSrcFileName 明文文件名称(全路径)
sDestFileName 密文文件名称(全路径)
sKeyFileName 密钥文件名称(全路径)
输出:0 加密成功
1 加密失败是参数格式问题吗?
Function EncFile(sSrcFileName, sDestFileName, sKeyFileName :pchar):Integer
begin
result:=加密函数();
end;