- 博客(26)
- 收藏
- 关注
原创 Delphi中调用API函数经验点滴(三)
三、防止多次载入应用程序实例 某些应用程序需要禁止用户载入多次实例。比如,控制面板中的应用程序,不管用户打开多少次,同一应用程序只有一个实例,而且每一次试图重复打开都会自动激活已经存在的实例。 Windows API 提供了函数FindWindow,可以是应用程序在启动时检查自己是否已经存在。 该函数在Delphi中的语法是: function FindWind...
2015-12-24 16:59:55 124
转载 Delphi中调用API函数经验点滴(三)
三、防止多次载入应用程序实例 某些应用程序需要禁止用户载入多次实例。比如,控制面板中的应用程序,不管用户打开多少次,同一应用程序只有一个实例,而且每一次试图重复打开都会自动激活已经存在的实例。 Windows API 提供了函数FindWindow,可以是应用程序在启动时检查自己是否已经存在。 该函数在Delphi中的语法是: function Fin
2015-12-24 16:55:45 535
原创 Delphi中调用API函数经验点滴(二)
二、弹出模式化对话框 在Delphi中,提供模式化对话框的方法很多,现对几种比较常用的方法做如下比较: 1) 直接调用Windows API 函数MessageBox 该方法一般情况下使用正常,而且根据不同的操作系统将显示相应的中文或英文按钮标题。而在笔者曾经开发的系统中,偶尔会出现该函数没有锁定 Handle所指的窗口的情况。通过观察发现,当入口参数的窗口句柄是Appl...
2015-12-23 17:46:08 129
转载 Delphi中调用API函数经验点滴(二)
二、弹出模式化对话框 在Delphi中,提供模式化对话框的方法很多,现对几种比较常用的方法做如下比较: 1) 直接调用Windows API 函数MessageBox 该方法一般情况下使用正常,而且根据不同的操作系统将显示相应的中文或英文按钮标题。而在笔者曾经开发的系统中,偶尔会出现该函数没有锁定Handle所指的窗口的情况。通过观察发现,当入口参数的窗口句柄是Ap
2015-12-23 17:42:01 551
原创 Delphi中调用API函数经验点滴
在Delphi中调用Windows API 函数十分方便,只需在单元的uses段加入Windows 单元名即可(对于由Delphi自动创建的单元,该项工作已经完成)。单元Windows.pas 已经由Delphi编写并直接提供开发者引用。笔者在开发Windows 应用时对于几个特别的API函数总结了一些经验供大家参考。以下开发经验均在Windows 9x中适用。一、关闭系统 对于某些...
2015-12-21 17:28:48 163
转载 Delphi中调用API函数经验点滴
在Delphi中调用Windows API 函数十分方便,只需在单元的uses段加入Windows 单元名即可(对于由Delphi自动创建的单元,该项工作已经完成)。单元Windows.pas 已经由Delphi编写并直接提供开发者引用。笔者在开发Windows 应用时对于几个特别的API函数总结了一些经验供大家参考。以下开发经验均在Windows 9x中适用。一、关闭系统 对
2015-12-21 17:21:56 2473
原创 短消息调试笔记
AT+CNMI=2,2,0,0,0// 用TEXT模式发短信息流程AT+CMGF=1\r // TXT模式//AT+CSCA="+8613800512500" // 写信息中心号码AT+CSCS="GSM"\r // 字符集AT+CMGS="+8618913179619"\...
2015-12-18 18:08:42 133
转载 短消息调试笔记
AT+CNMI=2,2,0,0,0// 用TEXT模式发短信息流程AT+CMGF=1\r // TXT模式//AT+CSCA="+8613800512500" // 写信息中心号码AT+CSCS="GSM"\r // 字符集AT+CMGS="+8618913179619"\
2015-12-18 17:33:58 294
原创 短消息调试笔记
// AT+CSMS 选择消息业务AT+CSMS=0 // SMS 的AT 命令兼容GSM 07.05 Phase 2AT+CSMS=1 // SMS 的AT 命令兼容GSM 07.05 Phase 2+// AT+CMGF 选择消息格式AT+CMGF? ...
2015-12-17 17:36:00 200
转载 短消息调试笔记
// AT+CSMS 选择消息业务AT+CSMS=0 // SMS 的AT 命令兼容GSM 07.05 Phase 2AT+CSMS=1 // SMS 的AT 命令兼容GSM 07.05 Phase 2+// AT+CMGF 选择消息格式AT+CMGF?
2015-12-17 17:26:55 323
原创 GPRS模块AT呼叫控制命令
ATD拨号命令。这个命令用来设置通话、数据或传真呼叫。ATH挂机命令。ATA接电话。AT+CEER扩展错误报告。这个命令给出当上一次通话设置失败后中断通话的原因。AT+VTD给用户提供应用GSM网络发送DTMF(双音多频)双音频。这个命令用来定义双音频的长度(默认值是300毫秒)。AT+VTS给用户提供应用GS...
2015-12-16 17:36:01 181
转载 GPRS模块AT呼叫控制命令
ATD拨号命令。这个命令用来设置通话、数据或传真呼叫。ATH挂机命令。ATA接电话。AT+CEER扩展错误报告。这个命令给出当上一次通话设置失败后中断通话的原因。AT+VTD给用户提供应用GSM网络发送DTMF(双音多频)双音频。这个命令用来定义双音频的长度(默认值是300毫秒)。AT+VTS给用户提供应用G
2015-12-16 17:28:48 317
原创 GSM模块短信发送举例
先发送AT+CMGS= YYY [CR] ;其中 YYY 为TPDU的十进制长度,不包括SMSC的长度发英文用Bit7编码dcs=00,编码前用户数据最大长度为160字节发中文用UCS2编码dcs=08,编码前用户数据最大长度为70字发送二进制数据用Bit8编码dcs=15,编码前用户数据最大长度为140字节1. 用Bit7编码发送英文信息以下例子发送到13606809...
2015-12-10 17:33:44 383
转载 GSM模块短信发送举例
先发送AT+CMGS= YYY [CR] ;其中 YYY为TPDU的十进制长度,不包括SMSC的长度发英文用Bit7编码dcs=00,编码前用户数据最大长度为160字节发中文用UCS2编码dcs=08,编码前用户数据最大长度为70字发送二进制数据用Bit8编码dcs=15,编码前用户数据最大长度为140字节1. 用Bit7编码发送英文信息以下例子发送到13606
2015-12-10 17:31:05 1852
原创 AT+CNMI新消息提示
命令格式:AT+CNMI=,,,,:控制主动提供结果码的过程只支持=2,对于值013只是接受并返回OK其执行的过程与值2 一样。0:结果代码缓冲区在TA如果TA 的缓冲区满则提示信息存储在其他地方或者删除最旧的提示信息以新的代替。1:当TA-TE 链接保留时拒绝新消息结果码否则直接将其传送给TE。2:当TA-TE 链接保留时结果代码缓存在TA预约后发送给TE...
2015-12-09 17:26:11 227
转载 AT+CNMI新消息提示
命令格式:AT+CNMI=,,,,:控制主动提供结果码的过程只支持=2,对于值013只是接受并返回OK其执行的过程与值2 一样。0:结果代码缓冲区在TA如果TA 的缓冲区满则提示信息存储在其他地方或者删除最旧的提示信息以新的代替。1:当TA-TE 链接保留时拒绝新消息结果码否则直接将其传送给TE。2:当TA-TE 链接保留时结果代码缓存在TA预约后发送给TE否则直接将其传送给T
2015-12-09 17:20:30 654
原创 怎样用VB编写.DLL动态链接库文件
VB中创建的DLL只是COM组件,无法作为输出函数的DLL,其实这只是个错误的说法。其实MS非常狡猾,如果你是个VB疯狂发烧友的话,应该早就狂试出这种可以创建输出函数的DLL的方法。 VB编译文件实际上采取了两次编译的方法,首先是调用C2.exe产生*.OBJ文件,然后调用Link.EXE连接。如果在LINK的时候添加EXPORT选项,实际上是可以输出函数的。但是,在VB的工程选项中将这些...
2015-12-08 16:06:33 153
转载 怎样用VB编写.DLL动态链接库文件
VB中创建的DLL只是COM组件,无法作为输出函数的DLL,其实这只是个错误的说法。其实MS非常狡猾,如果你是个VB疯狂发烧友的话,应该早就狂试出这种可以创建输出函数的DLL的方法。 VB编译文件实际上采取了两次编译的方法,首先是调用C2.exe产生*.OBJ文件,然后调用Link.EXE连接。如果在LINK的时候添加EXPORT选项,实际上是可以输出函数的。但是,在VB的工程选项中将
2015-12-08 16:02:06 2279
原创 用Visual Basic设计手机短信收发程序
因为手机短消息的发送是以PDU串的形式发送出去的,中文字符以Unicode码来表示,所以在发送中文短消息之前必须首先将中文字符转换为Unicode码,下面的函数将实现这个功能。这个函数主要应用到VB自带的一个格式转换函数:ChrW()将中文转换为Unicode码。Public Function chg(rmsg As String) As StringDim tep As Stri...
2015-12-07 17:42:49 121
原创 短信开发的PDU格式
pdu 编码主要包括两个主要的部分,一是 pdu 串的整体数据格式,分别因为发送信息串和接收信息串而有区别,二是 pdu 中文本部分的编码,分别因为字符集而不同。我们也可以这样来理解这个 pdu 编码的格式, sms 相当于一个协议栈,最简单的协议栈:根据 gsm03.40 规范, sms 协议包括以下几层:1、 SM-AL :应用层。这个部分就是数据部分。2、 SM-TL :传输...
2015-12-04 17:08:46 113
转载 短信开发的PDU格式
pdu 编码主要包括两个主要的部分,一是 pdu 串的整体数据格式,分别因为发送信息串和接收信息串而有区别,二是 pdu 中文本部分的编码,分别因为字符集而不同。我们也可以这样来理解这个 pdu 编码的格式, sms 相当于一个协议栈,最简单的协议栈: 根据 gsm03.40 规范, sms 协议包括以下几层: 1、 SM-AL :应用层。这个部分就是数据部分。 2、 SM-T
2015-12-04 17:05:44 407
原创 如何不通过SIM卡直接读或写短消息
因为SIM卡只有1万到10万次的读写次数和10-15条短消息的存储空间,还涉及到SIM卡上短消息读写需要一定的时间才能完成。这些因素影响了许多应 用,这些应用需要通过GSM网络进行大量的数据交换,为保证流程的顺利进行,SIM卡要完成大量的读、写和删除操作,SIM卡的寿命周期很快就会达到,此 外,SIM卡完成这些工作所耗费的时间比外界要求的要多。为解决这些问题,有必要在终端上作一些软件设置,使短消息...
2015-12-03 17:50:53 151
转载 如何不通过SIM卡直接读或写短消息
因为SIM卡只有1万到10万次的读写次数和10-15条短消息的存储空间,还涉及到SIM卡上短消息读写需要一定的时间才能完成。这些因素影响了许多应用,这些应用需要通过GSM网络进行大量的数据交换,为保证流程的顺利进行,SIM卡要完成大量的读、写和删除操作,SIM卡的寿命周期很快就会达到,此外,SIM卡完成这些工作所耗费的时间比外界要求的要多。为解决这些问题,有必要在终端上作一些软件设置,使短消息不通
2015-12-03 17:44:44 509
原创 怎样在DELPHI中使用API函数
实际上,在DELPHI中调用WIN32 API函数与在C或C++中调用WIN32 API函数没有大的区别。DELPHI中将C或C++中引用 的WINDOWS.H头文件改写为WINDOWS.PAS单元,使WINDOWS API函数的定义符合PASCAL语法。而其他的头文件在DELPHI中也都有相应的.PAS单元一一对应,所以在DELPHI中调用API函数时,只须将相应的API函数单元加入到USES语...
2015-12-02 17:31:00 221
原创 一些AT指令详解
1. 使用“CNMI” 与“CSMP”指令设置不通过SIM卡进行数据传输因为SIM卡只有1万到10万次读写次数和10-18条的存储空间,还涉及到SIM卡上短消息读写需要一定的时间才能完成。这些因素影响了许多应用,这些应用需要通过GSM网络进行大量的数据交换,为了保证流程的顺利进行,SIM卡要完成大量的读、写以及删除的操作,SIM卡的寿命周期很快就回达到,此外,SIM卡完成这些工作所耗费的时间比外界...
2015-12-01 17:32:09 233
转载 一些AT指令详解
1. 使用“CNMI” 与“CSMP”指令设置不通过SIM卡进行数据传输因为SIM卡只有1万到10万次读写次数和10-18条的存储空间,还涉及到SIM卡上短消息读写需要一定的时间才能完成。这些因素影响了许多应用,这些应用需要通过GSM网络进行大量的数据交换,为了保证流程的顺利进行,SIM卡要完成大量的读、写以及删除的操作,SIM卡的寿命周期很快就回达到,此外,SIM卡完成这些工作所耗费的时间比外界
2015-12-01 17:28:39 1475
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人