C# 引用 sms.dll
1.引用程序
[STAThread, DllImport(@"C:\Windows\System32\sms.dll", EntryPoint = "Sms_Connection",CharSet=CharSet.Ansi,CallingConvention=CallingConvention.StdCall)]
public static extern uint Sms_Connection(string CopyRight,uint Com_Port,uint Com_BaudRate ,ref string Mobile_Type,ref string CopyRightToCOM);
2.执行程序
private void Sms_Connection_Button_Click(object sender, System.EventArgs e)
{
String TypeStr="";
String CopyRightToCOM="";
String CopyRightStr = "//上海迅赛信息技术有限公司,网址www.xunsai.com//";
if (Sms_Connection(CopyRightStr, uint.Parse(MobPort.Text), 0x2580, ref TypeStr, ref CopyRightToCOM) == 1) ///5为串口号,0为红外接口,1,2,3,...为串口
{
State_Show.Text=TypeStr;
Sms_Connection_Button.Enabled=false;
Sms_Disconnection_Button.Enabled=true;
}
else
{
State_Show.Text="连接失败!";
Sms_Connection_Button.Enabled=true;
Sms_Disconnection_Button.Enabled=false;
}
}
3.以下是出现的错误
另外我的电脑是64位的,但是我已经将它的运行平台设置为x86的了,sms.dll已经放在System32路径下了,请各位知道怎么解决的告诉我一下,多谢
这个短信猫我用过,淘宝上买的吧?提供的demo跟这个一模一样,也遇到这个问题,后来到XP 32 上搞了 一切正常。
win7 X64就是不行,厂商提供的Demo里有编译好的文件(debug里),直接运行就运行不了,跟开发环境貌似没有关系
建议你下一个串口工具,先按你说的参数看看能不能正常工作,然后再用程序连。如果设备有问题,你肯定是连不上的。至于连接语法,不同的硬件设备的dll是不一样的。
设备没有任何问题,而且他们同属于一个厂家。
最近刚好使用过短信猫,不能确保100%成功。但可以知道短信发送的状态。
建议咨询一下厂家是否支持64位系统,32位 2003系统,使用过程中一切正常 。
你用的是那个dll,不是sms.dll??,我已经将我的运行平台改为x86的了,还是不行
@威少: 是,应该是同一个短信猫
@lucika.zh: 你用的vs多少?是不是我这样用的?你当时就没碰到这个问题??我的qq:893912962,你加我一下
我做过短信猫软件的开发。
最开始也是像楼主一样使用厂家给的sms.dll,它提供的函数相当少,不够用,而且在32位、64位操作系统上兼容性有差异。
后来没办法喽,就只有上网自己学用C#写的短信猫控制类,学习了很多AT指令,解析短信码之类的知识,不断调试测试,最终达成所愿,成功了。
告诫一下要使用短信猫的朋友,不要买那种一百多块的西门子啊,wavecom之类的,它们连个单片机控制都没有,更没有什么看门狗电路,运行一段时候就不行了,要手动断电重启,哭死。要买还是买工业级的,有单片机控制电路的。
需要C#短信猫控制类源代码的联系我QQ147957272.
短信猫厂家直销 GSM短信猫池,TC35短信猫,WAVECOM短信猫 8口电信猫池,16口短信猫联系电话15986760960吴婷婷QQ1052012180