📄 connsender.hpp
字号:
// Borland C++ Builder
// Copyright (c) 1995, 1999 by Borland International
// All rights reserved
// (DO NOT EDIT: machine generated header) 'ConnSender.pas' rev: 5.00
#ifndef ConnSenderHPP
#define ConnSenderHPP
#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <NokiaUtils.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <WinSock.hpp> // Pascal unit
#include <CommP.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <SysInit.hpp> // Pascal unit
#include <System.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Connsender
{
//-- type declarations -------------------------------------------------------
struct LM_IRPARMS
{
unsigned nTXDataBytes;
unsigned nRXDataBytes;
unsigned nBaudRate;
unsigned thresholdTime;
unsigned discTime;
short nMSLinkTurn;
Byte nTXPackets;
Byte nRXPackets;
} ;
typedef LM_IRPARMS *PLM_IRPARMS;
struct SOCKADDR_IRDA
{
short irdaAddressFamily;
Byte irdaDeviceID[4];
char irdaServiceName[25];
} ;
typedef SOCKADDR_IRDA *PSOCKADDR_IRDA;
#pragma pack(push, 1)
struct IRDA_DEVICE_INFO
{
Byte irdaDeviceID[4];
char irdaDeviceName[22];
Byte irdaDeviceHints1;
Byte irdaDeviceHints2;
Byte irdaCharSet;
} ;
#pragma pack(pop)
typedef IRDA_DEVICE_INFO *PIRDA_DEVICE_INFO;
struct DEVICELIST
{
unsigned numDevice;
IRDA_DEVICE_INFO Device[1];
} ;
typedef DEVICELIST *PDEVICELIST;
struct irdaAttribOctetSeq
{
short Len;
Byte OctetSeq[1024];
} ;
#pragma pack(push, 1)
struct irdaAttribUsrStr
{
Byte Len;
Byte CharSet;
Byte UsrStr[256];
} ;
#pragma pack(pop)
struct IAS_SET
{
char irdaClassName[64];
char irdaAttribName[256];
unsigned irdaAttribType;
int irdaAttribInt;
} ;
typedef IAS_SET *PIAS_SET;
struct IAS_QUERY
{
Byte irdaDeviceID[4];
char irdaClassName[64];
char irdaAttribName[256];
unsigned irdaAttribType;
int irdaAttribInt;
} ;
typedef IAS_QUERY *PIAS_QUERY;
#pragma option push -b-
enum TSendState { ssReady, ssBusy };
#pragma option pop
#pragma option push -b-
enum TConnectionMode { cmDAU9P, cmDLR3, cmIR };
#pragma option pop
typedef void __fastcall (__closure *TMsgNotifyEvent)(Byte MsgType, AnsiString Msg);
class DELPHICLASS TIrThread;
class PASCALIMPLEMENTATION TIrThread : public Classes::TThread
{
typedef Classes::TThread inherited;
private:
int fSocket;
TMsgNotifyEvent Events;
protected:
virtual void __fastcall Execute(void);
bool __fastcall OpenIrDA(void);
bool __fastcall ConnectToIrDA(void);
public:
__fastcall TIrThread(TMsgNotifyEvent e);
__property int IrSocket = {read=fSocket, nodefault};
public:
#pragma option push -w-inl
/* TThread.Destroy */ inline __fastcall virtual ~TIrThread(void) { }
#pragma option pop
};
class DELPHICLASS TConnectionSender;
class PASCALIMPLEMENTATION TConnectionSender : public System::TObject
{
typedef System::TObject inherited;
private:
bool fUse7110IrDa;
bool fIrConnected;
TIrThread* IrThread;
bool ThreadActive;
TSendState fSendState;
bool fSendingPacket;
Commp::TCustComPort* fComPort;
TConnectionMode fConnMode;
Byte fPre;
Byte fPost;
AnsiString fInPacket;
TMsgNotifyEvent fEvents;
bool fIn;
bool fOut;
TextFile InFile;
TextFile OutFile;
unsigned fInitLength;
bool fReallyOpen;
bool __fastcall IsFullMessage(AnsiString s);
bool __fastcall IsAck(AnsiString s);
void __fastcall SendAck(AnsiString s);
AnsiString __fastcall CheckSum(AnsiString s);
protected:
void __fastcall SendPacket(Byte MsgType, AnsiString Msg);
void __fastcall ProcessResponse(System::TObject* Sender, int InQue);
public:
__fastcall TConnectionSender(int ComNumber, TConnectionMode ConnMode, Byte Pre, Byte Post, AnsiString
InFileName, AnsiString OutFileName, bool Ir7110, TMsgNotifyEvent Packets);
__fastcall virtual ~TConnectionSender(void);
bool __fastcall SendFrames(Byte MsgType, AnsiString Msg);
__property TSendState SendState = {read=fSendState, nodefault};
__property bool IrConnected = {read=fIrConnected, nodefault};
__property bool ReallyOpen = {read=fReallyOpen, nodefault};
__published:
__property bool Busy = {read=fSendingPacket, nodefault};
__property unsigned InitLength = {read=fInitLength, write=fInitLength, nodefault};
__property TMsgNotifyEvent OnMessage = {read=fEvents, write=fEvents};
};
//-- var, const, procedure ---------------------------------------------------
static const Shortint DEVICE_LIST_LEN = 0xa;
static const Shortint AF_IRDA = 0x1a;
static const Byte SOL_IRLMP = 0xff;
static const Shortint IRLMP_ENUMDEVICES = 0x10;
static const Shortint IRLMP_IAS_SET = 0x11;
static const Shortint IRLMP_IAS_QUERY = 0x12;
static const Shortint IRLMP_SEND_PDU_LEN = 0x13;
static const Shortint IRLMP_EXCLUSIVE_MODE = 0x14;
static const Shortint IRLMP_IRLPT_MODE = 0x15;
static const Shortint IRLMP_9WIRE_MODE = 0x16;
static const Shortint IRLMP_TINYTP_MODE = 0x17;
static const Shortint IRLMP_PARAMETERS = 0x18;
static const Shortint IRLMP_DISCOVERY_MODE = 0x19;
static const Shortint IRLMP_SHARP_MODE = 0x20;
static const Shortint IAS_ATTRIB_NO_CLASS = 0x10;
static const Shortint IAS_ATTRIB_NO_ATTRIB = 0x0;
static const Shortint IAS_ATTRIB_INT = 0x1;
static const Shortint IAS_ATTRIB_OCTETSEQ = 0x2;
static const Shortint IAS_ATTRIB_STR = 0x3;
static const Word IAS_MAX_USER_STRING = 0x100;
static const Word IAS_MAX_OCTET_STRING = 0x400;
static const Shortint IAS_MAX_CLASSNAME = 0x40;
static const Word IAS_MAX_ATTRIBNAME = 0x100;
static const Byte LM_HB_Extension = 0x80;
static const Shortint LM_HB1_PnP = 0x1;
static const Shortint LM_HB1_PDA_Palmtop = 0x2;
static const Shortint LM_HB1_Computer = 0x4;
static const Shortint LM_HB1_Printer = 0x8;
static const Shortint LM_HB1_Modem = 0x10;
static const Shortint LM_HB1_Fax = 0x20;
static const Shortint LM_HB1_LANAccess = 0x40;
static const Shortint LM_HB2_Telephony = 0x1;
static const Shortint LM_HB2_FileServer = 0x2;
static const Shortint LmCharSetASCII = 0x0;
static const Shortint LmCharSetISO_8859_1 = 0x1;
static const Shortint LmCharSetISO_8859_2 = 0x2;
static const Shortint LmCharSetISO_8859_3 = 0x3;
static const Shortint LmCharSetISO_8859_4 = 0x4;
static const Shortint LmCharSetISO_8859_5 = 0x5;
static const Shortint LmCharSetISO_8859_6 = 0x6;
static const Shortint LmCharSetISO_8859_7 = 0x7;
static const Shortint LmCharSetISO_8859_8 = 0x8;
static const Shortint LmCharSetISO_8859_9 = 0x9;
static const Byte LmCharSetUNICODE = 0xff;
static const Word LM_BAUD_1200 = 0x4b0;
static const Word LM_BAUD_2400 = 0x960;
static const Word LM_BAUD_9600 = 0x2580;
static const Word LM_BAUD_19200 = 0x4b00;
static const Word LM_BAUD_38400 = 0x9600;
static const Word LM_BAUD_57600 = 0xe100;
static const int LM_BAUD_115200 = 0x1c200;
static const int LM_BAUD_576K = 0x8ca00;
static const int LM_BAUD_1152K = 0x119400;
static const int LM_BAUD_4M = 0x3d0900;
static const Shortint OUT_MSG_LEN = 0x78;
#define RequestMsg ""
#define AckMsg "\x1e"
static const int CON_BASE_ERR = 0x10000;
static const int perWinsock = 0x10700;
static const int perEnumSockets = 0x10701;
static const int perNoDevice = 0x10702;
static const int perNoNokiaDevice = 0x10703;
static const int perIASQuery = 0x10704;
static const int perNokiaConnect = 0x10705;
extern PACKAGE int SequenceNumber;
extern PACKAGE int block;
extern PACKAGE char *DevListBuff;
extern PACKAGE char *IASQueryBuff;
extern PACKAGE char P1[298];
extern PACKAGE char P2[1356];
extern PACKAGE char DataBuffer[257];
extern PACKAGE char szAddr[32];
extern PACKAGE char *szzAddr;
extern PACKAGE bool ConnChecked;
extern PACKAGE bool ConnOK;
} /* namespace Connsender */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Connsender;
#endif
#pragma option pop // -w-
#pragma option pop // -Vx
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // ConnSender
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -