c#中调用腾讯云IM云通信生成签名,应用非托管sigcheck.dll文件,本地运行没问题,发布到服务器中提示找不到dll文件;
public const string DllPath = @"C:\WINDOWS\system32\sigcheck.dll"; // 32 位
class sigcheck
{
[DllImport(dllpath.DllPath, EntryPoint = "tls_gen_sig", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
public extern static int tls_gen_sig(
UInt32 expire,
string appid3rd,
UInt32 sdkappid,
string identifier,
UInt32 acctype,
StringBuilder sig,
UInt32 sig_buff_len,
string pri_key,
UInt32 pri_key_len,
StringBuilder err_msg,
UInt32 err_msg_buff_len
);
[DllImport(dllpath.DllPath, EntryPoint = "tls_vri_sig", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
public extern static int tls_vri_sig(
string sig,
string pub_key,
UInt32 pub_key_len,
UInt32 acctype,
string appid3rd,
UInt32 sdkappid,
string identifier,
StringBuilder err_msg,
UInt32 err_msg_buff_len
);
[DllImport(dllpath.DllPath, EntryPoint = "tls_gen_sig_ex", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
public extern static int tls_gen_sig_ex(
UInt32 sdkappid,
string identifier,
StringBuilder sig,
UInt32 sig_buff_len,
string pri_key,
UInt32 pri_key_len,
StringBuilder err_msg,
UInt32 err_msg_buff_len
);
[DllImport(dllpath.DllPath, EntryPoint = "tls_vri_sig_ex", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
public extern static int tls_vri_sig_ex(
string sig,
string pub_key,
UInt32 pub_key_len,
UInt32 sdkappid,
string identifier,
ref UInt32 expire_time,
ref UInt32 init_time,
StringBuilder err_msg,
UInt32 err_msg_buff_len
);
}
网上说的放到system32目录下,我也放了;dll文件用到其他dll文件我看system32目录下也有,但是好多试了都不管用,实在不知怎么办了