亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? smsdll.pas

?? 手機的短信程序
?? PAS
字號:
unit SMSDLL;
{**************************************************************************}
{                                                                          }
{    This C DLL header file first (automatic) conversion generated by:     }
{    HeadConv 4.0 (c) 2000 by Bob Swart (aka Dr.Bob - www.drbob42.com)     }
{      Final Delphi-Jedi (Darth) command-line units edition                }
{                                                                          }
{    Generated Date:   2004-2-1                                            }
{    Generated Time: 19:54:31                                              }
{                                                                          }
{**************************************************************************}

interface
uses
{$IFDEF WIN32}
  Windows;
{$ELSE}
  Wintypes, WinProcs;
{$ENDIF}


{=> d:\vc_exec\dll\smsdll\SMSDLL.H <=}

{$IFNDEF _smsdll_h_}
{$DEFINE _smsdll_h_}

{$INCLUDE <windows.h>}
{/// 用戶信息編碼方式 }
const
  GSM_7BIT = 0;
const
  GSM_8BIT = 4;
const
  GSM_UCS2 = 8;

{/// 串口設備句柄 }

{/// 短消息參數結構,編碼/解碼共用 }
{/// 其中,字符串以0結尾 }
type
  SM_PARAM = record
    SCA: Array[0..16-1] of Char;
    TPA: Array[0..16-1] of Char;
    TP_PID: Char;
    TP_DCS: Char;
    TP_SCTS: Array[0..16-1] of Char;
    TP_UD: Array[0..161-1] of Char;
    index: Char;
  end {SM_PARAM};

{/// 正常順序的字符串轉換為兩兩顛倒的字符串,若長度為奇數,補'F'湊成偶數 }
{/// 如:"8613851872468" --> "683158812764F8" }
{/// pSrc: 源字符串指針 }
{/// pDst: 目標字符串指針 }
{/// nSrcLength: 源字符串長度 }
{/// 返回: 目標字符串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMINVERTNUMBERS( CHAR; 
                      pDst: PChar; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 兩兩顛倒的字符串轉換為正常順序的字符串 }
{/// 如:"683158812764F8" --> "8613851872468" }
{/// pSrc: 源字符串指針 }
{/// pDst: 目標字符串指針 }
{/// nSrcLength: 源字符串長度 }
{/// 返回: 目標字符串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMSERIALIZENUMBERS( CHAR; 
                      pDst: PChar; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// PDU編碼,用于編制、發送短消息 }
{/// pSrc: 源PDU參數指針 }
{/// pDst: 目標PDU串指針 }
{/// 返回: 目標PDU串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMENCODEPDU( SM_PARAM; 
                      pDst: PChar): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// PDU解碼,用于接收、閱讀短消息 }
{/// pSrc: 源PDU串指針 }
{/// pDst: 目標PDU參數指針 }
{/// 返回: 用戶信息串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMDECODEPDU( CHAR; 
                      var pDst: SM_PARAM): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 7-bit編碼 }
{/// pSrc: 源字符串指針 }
{/// pDst: 目標編碼串指針 }
{/// nSrcLength: 源字符串長度 }
{/// 返回: 目標編碼串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMENCODE7BIT( CHAR; 
                      var pDst: Byte; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 7-bit解碼 }
{/// pSrc: 源編碼串指針 }
{/// pDst: 目標字符串指針 }
{/// nSrcLength: 源編碼串長度 }
{/// 返回: 目標字符串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMDECODE7BIT( UNSIGNED CHAR; 
                      pDst: PChar; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// UCS2編碼 }
{/// pSrc: 源字符串指針 }
{/// pDst: 目標編碼串指針 }
{/// nSrcLength: 源字符串長度 }
{/// 返回: 目標編碼串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMENCODEUCS2( CHAR; 
                      var pDst: Byte; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// UCS2解碼 }
{/// pSrc: 源編碼串指針 }
{/// pDst: 目標字符串指針 }
{/// nSrcLength: 源編碼串長度 }
{/// 返回: 目標字符串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMDECODEUCS2( UNSIGNED CHAR; 
                      pDst: PChar; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 可打印字符串轉換為字節數據 }
{/// 如:"C8329BFD0E01" --> {0xC8, 0x32, 0x9B, 0xFD, 0x0E, 0x01} }
{/// pSrc: 源字符串指針 }
{/// pDst: 目標數據指針 }
{/// nSrcLength: 源字符串長度 }
{/// 返回: 目標數據長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMSTRING2BYTES( CHAR; 
                      var pDst: Byte; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 字節數據轉換為可打印字符串 }
{/// 如:{0xC8, 0x32, 0x9B, 0xFD, 0x0E, 0x01} --> "C8329BFD0E01" }
{/// pSrc: 源數據指針 }
{/// pDst: 目標字符串指針 }
{/// nSrcLength: 源數據長度 }
{/// 返回: 目標字符串長度 }
var
  _declspec: function(const pSrc: PDLLEXPORT) INT _CDECL GSMBYTES2STRING( UNSIGNED CHAR; 
                      pDst: PChar; 
                      nSrcLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 發送短消息 }
{/// pSrc: 源PDU參數指針 }
var
  _declspec: function(const pSrc: PDLLEXPORT) BOOL _CDECL GSMSENDMESSAGE( SM_PARAM): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 讀取短消息 }
{/// 用+CMGL代替+CMGR,可一次性讀出全部短消息 }
{/// pMsg: 短消息緩沖區,必須足夠大 }
{/// 返回: 短消息條數 }
var
  _declspec: function(var pMsg: DLLEXPORT) INT _CDECL GSMREADMESSAGE(SM_PARAM): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 刪除短消息 }
{/// index: 短消息序號,從1開始 }
var
  _declspec: function(const index: DLLEXPORT) BOOL _CDECL GSMDELETEMESSAGE( INT): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 打開串口 }
{/// pPort: 串口名稱或設備路徑,可用"COM1"或"\\.\COM1"兩種方式,建議用后者 }
{/// nBaudRate: 波特率 }
{/// nParity: 奇偶校驗 }
{/// nByteSize: 數據字節寬度 }
{/// nStopBits: 停止位 }
var
  _declspec: function(const pPort: PDLLEXPORT) BOOL _CDECL OPENCOMM( CHAR; 
                      nBaudRate: Integer; 
                      nParity: Integer; 
                      nByteSize: Integer; 
                      nStopBits: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 關閉串口 }
var
  _declspec: function(CloseComm(: DLLEXPORT) BOOL _CDECL): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 寫串口 }
{/// pData: 待寫的數據緩沖區指針 }
{/// nLength: 待寫的數據長度 }
var
  _declspec: function(var pData: DLLEXPORT) VOID _CDECL WRITECOMM(VOID; 
                      nLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 
{/// 讀串口 }
{/// pData: 待讀的數據緩沖區指針 }
{/// nLength: 待讀的最大數據長度 }
{/// 返回: 實際讀入的數據長度 }
var
  _declspec: function(var pData: DLLEXPORT) INT _CDECL READCOMM(VOID; 
                      nLength: Integer): "C" cdecl  {$IFDEF WIN32} stdcall {$ENDIF}; 

{$ENDIF}

var
  DLLLoaded: Boolean { is DLL (dynamically) loaded already? }
    {$IFDEF WIN32} = False; {$ENDIF}

implementation

var
  SaveExit: pointer;
  DLLHandle: THandle;
{$IFNDEF MSDOS}
  ErrorMode: Integer;
{$ENDIF}

  procedure NewExit; far;
  begin
    ExitProc := SaveExit;
    FreeLibrary(DLLHandle)
  end {NewExit};

procedure LoadDLL;
begin
  if DLLLoaded then Exit;
{$IFNDEF MSDOS}
  ErrorMode := SetErrorMode($8000{SEM_NoOpenFileErrorBox});
{$ENDIF}
  DLLHandle := LoadLibrary('SMSDLL.DLL');
  if DLLHandle >= 32 then
  begin
    DLLLoaded := True;
    SaveExit := ExitProc;
    ExitProc := @NewExit;
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
    @_declspec := GetProcAddress(DLLHandle,'_declspec');
  {$IFDEF WIN32}
    Assert(@_declspec <> nil);
  {$ENDIF}
  end
  else
  begin
    DLLLoaded := False;
    { Error: SMSDLL.DLL could not be loaded !! }
  end;
{$IFNDEF MSDOS}
  SetErrorMode(ErrorMode)
{$ENDIF}
end {LoadDLL};

begin
  LoadDLL;
end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品一区二区三区四区高清| 色av一区二区| 欧美男女性生活在线直播观看| 久久亚洲二区三区| 视频在线观看国产精品| 99这里只有久久精品视频| 精品区一区二区| 手机精品视频在线观看| 色94色欧美sute亚洲线路二| 国产欧美精品区一区二区三区 | 精品国产乱码久久久久久影片| 亚洲免费在线电影| 成人污视频在线观看| 精品毛片乱码1区2区3区| 午夜精品一区在线观看| 色综合色狠狠综合色| 中文字幕不卡在线播放| 国产一区二区三区精品视频| 日韩视频永久免费| 石原莉奈在线亚洲二区| 欧美色图12p| 亚洲综合男人的天堂| 99久久综合精品| 国产精品天美传媒| 国产风韵犹存在线视精品| 日韩欧美一级在线播放| 日韩av不卡一区二区| 欧美日韩在线播放三区四区| 亚洲精品综合在线| 91免费视频大全| 亚洲图片欧美激情| av激情综合网| 中文字幕一区日韩精品欧美| 成人永久免费视频| 亚洲国产精品v| 国产99精品国产| 欧美激情综合五月色丁香小说| 国产91丝袜在线播放0| 国产无遮挡一区二区三区毛片日本 | 91福利资源站| 亚洲精品欧美激情| 在线观看av一区| 亚洲国产综合91精品麻豆| 欧美视频一区二区| 午夜一区二区三区在线观看| 欧美日韩国产综合草草| 午夜精品爽啪视频| 91麻豆精品国产91久久久久| 日本午夜精品一区二区三区电影| 伊人一区二区三区| 欧美视频第二页| 日韩精品一二三区| 日韩欧美的一区二区| 久久99精品久久久久| 久久在线免费观看| 成人国产免费视频| 中文字幕一区二区三区不卡| 久久久久一区二区三区四区| 秋霞国产午夜精品免费视频| 欧美成人精品福利| 国产精品自拍av| 中文字幕日本不卡| 91激情五月电影| 日韩成人一级大片| 国产午夜精品一区二区三区嫩草| 成人av网站在线观看| 亚洲最大成人网4388xx| 欧美一区午夜精品| 国产在线精品视频| 亚洲欧美自拍偷拍| 欧美日韩视频在线第一区| 久久综合综合久久综合| 国产欧美1区2区3区| 日本乱人伦aⅴ精品| 无码av中文一区二区三区桃花岛| 精品国产一区二区三区四区四| 国产成人免费在线观看不卡| 亚洲靠逼com| 欧美一级夜夜爽| 成人美女视频在线观看| 亚洲一区在线观看网站| 欧美v日韩v国产v| 不卡的看片网站| 亚洲图片欧美色图| 2023国产一二三区日本精品2022| av电影一区二区| 五月天亚洲婷婷| 国产色婷婷亚洲99精品小说| 91精品1区2区| 激情六月婷婷久久| 亚洲另类在线制服丝袜| 欧美大片免费久久精品三p| 91影院在线免费观看| 免费在线观看视频一区| 国产精品白丝在线| 欧美一区二区视频免费观看| 成人精品视频一区| 日本亚洲欧美天堂免费| 成人性生交大合| 天天综合日日夜夜精品| 欧美激情综合在线| 51精品秘密在线观看| proumb性欧美在线观看| 日韩av午夜在线观看| 中文字幕亚洲区| 欧美mv日韩mv国产网站| 在线免费av一区| 国产成人午夜精品影院观看视频| 亚洲高清视频中文字幕| 国产女主播一区| 日韩午夜av电影| 欧美中文字幕久久| 风间由美一区二区av101| 日韩精品一区第一页| 亚洲欧美综合色| 精品成人一区二区三区| 欧美三片在线视频观看| 国产精品激情偷乱一区二区∴| 亚洲一区在线视频| 精品制服美女丁香| 色综合天天综合色综合av| 另类的小说在线视频另类成人小视频在线| 欧美激情在线一区二区三区| 日韩午夜在线影院| 在线观看亚洲精品视频| 成人三级伦理片| 视频在线观看91| 亚洲精品乱码久久久久久黑人| 国产精品久久久久久户外露出 | 国产精品入口麻豆九色| 久久久久久久久久久黄色| 久久综合久色欧美综合狠狠| 欧美大胆人体bbbb| 精品国产免费视频| 26uuu精品一区二区三区四区在线| 日韩欧美电影一区| 久久五月婷婷丁香社区| 精品国产乱码久久久久久夜甘婷婷| 日韩精品一区在线| 精品国产99国产精品| 久久精品免视看| 国产精品全国免费观看高清 | 国产精品你懂的| 国产精品理论片在线观看| 粉嫩嫩av羞羞动漫久久久| 国产91在线|亚洲| av成人免费在线观看| 91欧美激情一区二区三区成人| 日本高清不卡一区| 欧美精品乱码久久久久久按摩| 7777女厕盗摄久久久| 欧美sm美女调教| 欧美极品少妇xxxxⅹ高跟鞋 | 精品电影一区二区| 欧美激情综合在线| 亚洲精品视频一区| 石原莉奈一区二区三区在线观看| 免费在线观看成人| 国产盗摄一区二区| 99久久久精品| 欧美日韩国产综合一区二区三区| 日韩网站在线看片你懂的| 国产偷国产偷亚洲高清人白洁 | 久久久综合精品| 国产精品久久影院| 亚洲观看高清完整版在线观看| 美日韩一区二区三区| 国产二区国产一区在线观看| 色94色欧美sute亚洲线路一ni| 在线综合视频播放| 国产日韩欧美精品电影三级在线| 亚洲欧美日韩中文播放| 天堂va蜜桃一区二区三区| 国产一区亚洲一区| 色婷婷激情一区二区三区| 69av一区二区三区| 亚洲国产精品ⅴa在线观看| 一区二区日韩电影| 精品一区二区三区av| 91免费版在线| 欧美一级黄色录像| 国产精品国模大尺度视频| 偷拍自拍另类欧美| 风间由美性色一区二区三区| 欧美日韩综合一区| 久久久久国产精品人| 亚洲一区二区精品久久av| 国产在线播放一区| 欧美午夜寂寞影院| 久久久久九九视频| 香蕉久久一区二区不卡无毒影院| 国产精品影视在线观看| 欧美三区免费完整视频在线观看| 精品国产免费一区二区三区香蕉| 一区二区在线免费| 国模无码大尺度一区二区三区| 色综合色综合色综合色综合色综合 | 亚洲色图制服丝袜| 久久精品国产一区二区三 | 制服丝袜一区二区三区|