




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-1using System;using System.Collections.Generic;using System.Text;using System.Security.Cryptography;namespace CMPP.API.MT#region CMPP 消息類(lèi)定義 C# namespace MSG#region 枚舉類(lèi)型public enum CMPP_COMMAND_ID : uintCMPP_CONNECT = 1, CMPP_CONNECT_RESP = 0x80000001,CMPP_TERMINATE = 0x00000002,
2、 / 終止連接CMPP_TERMINATE_RESP = 0x80000002, / 終止連接應(yīng)答CMPP_SUBMIT = 0x00000004,/提交CMPP_SUBMIT_RESP = 0x80000004,/ 提交下發(fā)/ 下發(fā)狀態(tài)應(yīng)答CMPP_DELIVER = 0x00000005,/CMPP_DELIVER_RESP = 0x80000005, CMPP_QUERY = 0x00000006, / CMPP_QUERY_RESP = 0x80000006, /CMPP_CANCEL = 0x00000007, / 刪除應(yīng)答狀態(tài)應(yīng)答CMPP_CANCEL_RESP = 0x80000
3、007, / 刪除CMPP_ACTIVE_TEST = 0x00000008, /激活測(cè)試應(yīng)答CMPP_ACTIVE_TEST_RESP = 0x80000008 / 激活測(cè)試應(yīng)答public enum FeeUserTypeFEE_TERMINAL_ID = 0,FEE_SOURCE_ID = 1,FEE_SP = 2,FEE_NULL = 3public enum Msg_FormatASCII = 0,WRITECARD = 1,BINARY = 4,UCS2 = 8,GB2312 = 15public enum SUBMIT_RESULTSUCC = 0,/MSG_STRUCTURE_
4、ERR = 1,COMMANID_ERR = 2,MSG_SEQUENCE_ERR = 3,MSG_LENGTH_ERR = 4,億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-2FEE_CODE_ERR = 5,OUT_OF_MSG_LEN_ERR = 6,SVC_CODE_ERR = 7,FLUX_ERR = 8,OTHER_ERR = 9#endregion#region 結(jié)構(gòu)定義public struct FeeTypepublic static readonly string FEE_TERMINAL_FREE = "01" public static readonly
5、 string FEE_TERMINAL_PERITEM = "02" public static readonly string FEE_TERMINAL_MONTH = "03" public static readonly string FEE_TERMINAL_TOP = "04" public static readonly string FEE_TERMINAL_SP = "05"public struct DELIVER_STATEpublic static readonly string DELIV
6、ERED = "DELIVRD" public static readonly string EXPIRED = "EXPIRED" public static readonly string DELETED = "DELETED"public static readonly string UNDELIVERABLE = "UNDELIV" public static readonly string ACCEPTED = "ACCEPTD"public static readonly strin
7、g UNKNOWN = "UNKNOWN" public static readonly string REJECTED = "REJECTD"#endregionpublic class CMPP_MSG_Header /消息頭private byte initValue = new byteMSG.CMPP_MSG_Header.HeaderLength;public CMPP_MSG_Header(CMPP_COMMAND_ID Command_ID) /BIConvert.Int2Bytes(uint)Command_ID).CopyTo(ini
8、tValue, 4);前public CMPP_MSG_Header(byte bs) /根據(jù)受到的字節(jié)進(jìn)行構(gòu)造 字節(jié)序列int l = MSG.CMPP_MSG_Header.HeaderLength; for (int i = 0; i < l; i+)initValuei = bsi;public CMPP_MSG_Header(byte bs, int baseIndex) /根據(jù)受到的字節(jié)進(jìn)行構(gòu)造 字節(jié)序列int l = MSG.CMPP_MSG_Header.HeaderLength;億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-3for (int i = 0; i < l
9、; i+)initValuei = bsbaseIndex + i;public uint MSGLength /獲取此消息頭代表的消息的整個(gè)長(zhǎng)度getreturn (BIConvert.Bytes2UInt(initValue, 0);setbyte t = BIConvert.Int2Bytes(value); for (int i = 0; i < 4; i+)initValuei = ti;public uint Command_IDgetreturn (BIConvert.Bytes2UInt(initValue, 4);setbyte t = BIConvert.Int2By
10、tes(value); for (int i = 0; i < 4; i+)initValuei + 4 = ti;public uint SequenceIdgetreturn (BIConvert.Bytes2UInt(initValue, 8);setbyte t = BIConvert.Int2Bytes(value); for (int i = 0; i < 4; i+)億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-4initValuei + 4 + 4 = ti;public byte toBytes()return (initValue); /將字段轉(zhuǎn)化為字節(jié)public
11、 void fromBytes(byte bs)for (int i = 0; i < MSG.CMPP_MSG_Header.HeaderLength; i+)initValuei = bsi;public static int HeaderLengthgetreturn (4 + 4 + 4);public class CMPP_MSG_CONNECTCMPP_MSG_Header header; byte initValue;byte body;int baseIndex = MSG.CMPP_MSG_Header.HeaderLength; /消息的起始byte ver = 0x
12、30;byte AuthenticatorSource = new Byte16; string _SystemID = "000000"string _Password = "00000000" string _timestamp = "0000000000"/的驗(yàn)證信息public CMPP_MSG_CONNECT(uint sequence)header=newMSG.CMPP_MSG_Header(MSG.CMPP_COMMAND_ID.CMPP_CONNECT);header.SequenceId = sequence;he
13、ader.MSGLength MSG.CMPP_MSG_Header.HeaderLength);=(uint)(this.BodyLength+body = new bytethis.BodyLength;public CMPP_MSG_CONNECT(byte bs)億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-5initValue = new bytebs.Length; bs.CopyTo(initValue, 0); /進(jìn)行初始化行為byte temp = new byteMSG.CMPP_MSG_Header.HeaderLength; for (int i = 0; i < t
14、emp.Length; i+)tempi = bsi;byte body = new Bytebs.Length - MSG.CMPP_MSG_Header.HeaderLength; for (int i = 0; i < body.Length; i+)bodyi = bsMSG.CMPP_MSG_Header.HeaderLength + i; /將消息的字節(jié)存儲(chǔ)header = new MSG.CMPP_MSG_Header(temp); /構(gòu)造 消息頭header.MSGLength MSG.CMPP_MSG_Header.HeaderLength);=(uint)(this.
15、BodyLength+header.Command_ID = (uint)MSG.CMPP_COMMAND_ID.CMPP_CONNECT;public int BodyLengthgetreturn (6 + 16 + 4 + 1);public string SourceAddset_SystemID = value;byte t = Encoding.ASCII.GetBytes(_SystemID); /轉(zhuǎn)換為字節(jié)數(shù)組t.CopyTo(body, 0);public string Passwordset_Password = value;public string Versionset
16、ver = Convert.ToByte("0x" + value, 16);億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-6public string Versetver = Convert.ToByte(value);private static string getTimestamp() /返回一個(gè)時(shí)間戳 4 字節(jié)DateTime msgtime = DateTime.Now;string u = msgtime.Month.ToString().PadLeft(2, '0'); u = u + msgtime.Day.ToString().PadLeft
17、(2, '0');u = u + msgtime.Hour.ToString().PadLeft(2, '0');u = u + msgtime.Minute.ToString().PadLeft(2, '0'); u = u + msgtime.Second.ToString().PadLeft(2, '0'); return (u);private byte getMd5Code()MD5 md5 = new MD5CryptoServiceProvider(); /創(chuàng)建MD5 類(lèi)別byte buf = new byte6 +
18、 9 + _Password.Length + 10;byte s_a = Encoding.ASCII.GetBytes(_SystemID); /Source_ADD 就是企業(yè)代碼byte s_0 = 0, 0, 0, 0, 0, 0, 0, 0, 0 ;/9 字節(jié)的0,此處當(dāng)作右補(bǔ)0byte s_p = Encoding.ASCII.GetBytes(_Password); /this._timestamp = getTimestamp();/取得認(rèn)證碼時(shí)賦值字符串byte s_t = Encoding.ASCII.GetBytes(_timestamp); /10 位的字符串字節(jié)數(shù)組s
19、_a.CopyTo(buf, 0);s_0.CopyTo(buf, 6);s_p.CopyTo(buf, 6 + 9);/base 0/base 6/base 6+9s_t.CopyTo(buf, 6 + 9 + _Password.Length); /base 6+9+password.lengthreturn (md5.ComputeHash(buf, 0, buf.Length);private byte getSourceAdd()return (Encoding.ASCII.GetBytes(this._SystemID);public byte ToBytes()/返回當(dāng)前對(duì)象的字
20、節(jié)數(shù)組印象bytereVal=newByteMSG.CMPP_MSG_Header.HeaderLength+this.BodyLength;header.toBytes().CopyTo(reVal, 0);/消息頭getSourceAdd().CopyTo(reVal, MSG.CMPP_MSG_Header.HeaderLength); /源地址 企業(yè)代碼getMd5Code().CopyTo(reVal, MSG.CMPP_MSG_Header.HeaderLength + 6);/認(rèn)證md5reValMSG.CMPP_MSG_Header.HeaderLength + 6 + 16
21、= this.ver;/版本字億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-7節(jié)BIConvert.Int2Bytes(Convert.ToUInt32(this._timestamp).CopyTo(reVal, MSG.CMPP_MSG_Header.HeaderLength + 6 + 16 + 1);return (reVal);public class CMPP_MSG_CONNECT_RESPCMPP_MSG_Header header; uint _status;byte AuthenticatorISMG; byte _Version;public CMPP_MSG_CONNECT
22、_RESP(byte bs)byte temp_head = new ByteMSG.CMPP_MSG_Header.HeaderLength; int index = 0;for (int i = 0; i < MSG.CMPP_MSG_Header.HeaderLength; i+)temp_headi = bsindex+;header = new MSG.CMPP_MSG_Header(temp_head); this._status = BIConvert.Bytes2UInt(bs, index); /狀態(tài)字節(jié)index += 4;AuthenticatorISMG = ne
23、w byte16;/回應(yīng)摘要for (int i = 0; i < AuthenticatorISMG.Length; i+)AuthenticatorISMGi = bsindex+;_Version = bsindex+;public bool isOkgetreturn (true);public string Vergetreturn (Convert.ToString(this._Version, 16);public string ISMGREturnAuthCode億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-8getreturn (Encoding.ASCII.GetStri
24、ng(AuthenticatorISMG);public uint Command_IDgetreturn (header.Command_ID);setheader.Command_ID = value;public uint Sequencegetreturn (header.SequenceId);public int Statusgetreturn (int)this._status);public class CMPP_MSG_TERMINATECMPP_MSG_Header header;public CMPP_MSG_TERMINATE(uint sequence)header=
25、newMSG.CMPP_MSG_Header(MSG.CMPP_COMMAND_ID.CMPP_TERMINATE);header.MSGLength = (uint)MSG.CMPP_MSG_Header.HeaderLength; header.SequenceId = sequence;public CMPP_MSG_TERMINATE(byte bs)header = new MSG.CMPP_MSG_Header(bs);public byte toBytes()億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-9return (header.toBytes();public uint Se
26、quencegetreturn (header.SequenceId);public class CMPP_MSG_TERMINATE_RESPCMPP_MSG_Header header;public CMPP_MSG_TERMINATE_RESP(byte bs)header = new CMPP_MSG_Header(bs);public CMPP_MSG_TERMINATE_RESP(uint sequence)header=newMSG.CMPP_MSG_Header(MSG.CMPP_COMMAND_ID.CMPP_TERMINATE_RESP);header.MSGLength
27、= (uint)MSG.CMPP_MSG_Header.HeaderLength; header.SequenceId = sequence;public byte toBytes()return (header.toBytes();public uint Command_IDgetreturn (header.Command_ID);setheader.Command_ID = value;public uint Sequencegetreturn (header.SequenceId);億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-10public class CMPP_MSG_SUBMITC
28、MPP_MSG_Header header;/int _isReportOrSMC = 1;/是否需要狀態(tài)報(bào)告int _isReportOrSMC = 0;/是否需要狀態(tài)報(bào)告 0 不要,1 需要int _msgTotal = 1; int _msgNumber = 1; int _msgLevel = 0;/相同消息的條數(shù)/消息級(jí)別string _svcCode = "" /業(yè)務(wù)類(lèi)型int _feeUserType = 0;/計(jì)費(fèi)用戶(hù)類(lèi)型字段0:對(duì)目的終端MSISDN 計(jì)費(fèi);1:對(duì)源終端MSISDN 計(jì)費(fèi);2:對(duì)SP 計(jì)費(fèi);3:表示本字段無(wú)效,對(duì)誰(shuí)計(jì)費(fèi)參見(jiàn)Fee_termi
29、nal_Id 字段string _feeTerminalId = "" /被計(jì)費(fèi)終端int _feempType = 0; int _tpPid = 0;int _tpUDHI = 0;uint _msgFmt = (int)MSG.Msg_Format.GB2312; /消息格式string _msgsrc = ""/消息來(lái)源 即spidstring _feeType = MSG.FeeType.FEE_TERMINAL_PERITEM;/string _feeCode = "" string _valIdTime = "
30、" string _atTime = ""/資費(fèi)/存活期/調(diào)度時(shí)間string _srcId = ""int _destUsrNum = 1;/源號(hào)碼,就是在上顯示的號(hào)碼/接受消息的數(shù)string _destTerminalIds = "" /UserMP int _usermpType = 0;int _msgLengt = 0; string _MsgContent = ""UInt64 _MsgID;/返回的消息ID string _LinkID = ""public CMPP_
31、MSG_SUBMIT(uint MtID)header=newMSG.CMPP_MSG_Header(MSG.CMPP_COMMAND_ID.CMPP_SUBMIT);header.SequenceId = MtID;#region 字段屬性/屬性/ public string MtMsgsetthis._MsgContent = value;byte t = Encoding.ASCII.GetBytes(value); this._msgLengt = t.Length;億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-11public int MsgLevelsetthis._msgLevel
32、= value;public string FeeMPsetthis._feeTerminalId = value;public string UserMPsetthis._destTerminalIds = value;public string SPIDsetthis._msgsrc = value;public string ServiceNumsetthis._srcId = value;/可以此處確定長(zhǎng)號(hào)碼public string ServiceIDsetthis._svcCode = value;public string FeeTypeset億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼
33、60-12this._feeType = value.PadLeft(2, '0');public string FeeCodesetthis._feeCode = value;public string ValIdTimesetthis._valIdTime = value;public string AtTimesetthis._atTime = value;public UInt64 MsgIDsetthis._MsgID = value;getreturn (this._MsgID);public string LinkIDsetthis._LinkID = value
34、;/屬性結(jié)束/ #endregion億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-13public byte toBytes() /返回字節(jié)數(shù)印象byte submitData = new byte800;int index = MSG.CMPP_MSG_Header.HeaderLength;#region 進(jìn)入填充包的過(guò)程/當(dāng)前包的填充指針index = index + 8;/msgid 跳過(guò)submitDataindex+ = (byte)this._msgTotal; submitDataindex+ = (byte)this._msgNumber; submitDataindex+ =
35、(byte)this._isReportOrSMC; submitDataindex+ = (byte)this._msgLevel;byte svccode = Encoding.ASCII.GetBytes(this._svcCode);svccode.CopyTo(submitData, index);/拷貝到目標(biāo)index = index + 10;/index 增加submitDataindex+ = (byte)this._feeUserType;byte feetid = Encoding.ASCII.GetBytes(this._feeTerminalId); feetid.C
36、opyTo(submitData, index);index = index + 32;submitDataindex+ = (byte)this._feempType; submitDataindex+ = (byte)this._tpPid; submitDataindex+ = (byte)this._tpUDHI; submitDataindex+ = (byte)this._msgFmt;byte spid = Encoding.ASCII.GetBytes(this._msgsrc); spid.CopyTo(submitData, index);index = index + 6
37、;byte feetype = Encoding.ASCII.GetBytes(this._feeType); feetype.CopyTo(submitData, index);index = index + 2;byte feecode = Encoding.ASCII.GetBytes(this._feeCode); feecode.CopyTo(submitData, index);index = index + 6;/byte validtime=Encoding.ASCII.GetBytes(this._valIdTime);/validtime.CopyTo (submitDat
38、a,index); index = index + 17;/byte attime=Encoding.ASCII.GetBytes(this._valIdTime);/attime.CopyTo (submitData,index); index = index + 17;byte srcid = Encoding.ASCII.GetBytes(this._srcId); srcid.CopyTo(submitData, index);index = index + 21;submitDataindex+ = (byte)this._destUsrNum;byte temp = Encodin
39、g.ASCII.GetBytes(this._destTerminalIds); temp.CopyTo(submitData, index);index = index + 32;submitDataindex+ = (byte)this._usermpType; submitDataindex+ = (byte)this._msgLengt; byte msg = null;switch (this._msgFmt)#region 根據(jù)編碼類(lèi)型確定轉(zhuǎn)換字節(jié)case (uint)MSG.Msg_Format.ASCII:億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-14msg = Encodin
40、g.ASCII.GetBytes(this._MsgContent); msg.CopyTo(submitData, index);submitDataindex - 1 = (byte)msg.Length; index = index + msg.Length;break;/重新設(shè)定長(zhǎng)度case (uint)MSG.Msg_Format.BINARY:msg = Encoding.ASCII.GetBytes(this._MsgContent); msg.CopyTo(submitData, index);submitDataindex - 1 = (byte)msg.Length; in
41、dex = index + msg.Length;break;/重新設(shè)定長(zhǎng)度case (uint)MSG.Msg_Format.GB2312:msg = Encoding.Default.GetBytes(this._MsgContent); msg.CopyTo(submitData, index);submitDataindex - 1 = (byte)msg.Length; index = index + msg.Length;break;/重新設(shè)定長(zhǎng)度case (uint)MSG.Msg_Format.UCS2:msg = Encoding.BigEndianUnicode.GetBy
42、tes(this._MsgContent); msg.CopyTo(submitData, index);submitDataindex - 1 = (byte)msg.Length;/重新設(shè)定長(zhǎng)度index = index + msg.Length;break;case (uint)MSG.Msg_Format.WRITECARD:/寫(xiě)卡操作msg = Encoding.ASCII.GetBytes(this._MsgContent); msg.CopyTo(submitData, index);submitDataindex - 1 = (byte)msg.Length; index =
43、index + msg.Length;break; default:/重新設(shè)定長(zhǎng)度msg = Encoding.ASCII.GetBytes(this._MsgContent); msg.CopyTo(submitData, index);submitDataindex - 1 = (byte)msg.Length; index = index + msg.Length;break; #endregion/重新設(shè)定長(zhǎng)度byte linkid = Encoding.ASCII.GetBytes(this._LinkID); linkid.CopyTo(submitData, index);ind
44、ex = index + 20; #endregionheader.MSGLength = (uint)index;/根據(jù)index 的長(zhǎng)度決定傳輸數(shù)據(jù)字節(jié)長(zhǎng)度byte reVal = new byteindex;header.toBytes().CopyTo(reVal, 0);for (int i = MSG.CMPP_MSG_Header.HeaderLength; i < reVal.Length; i+)億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-15reVali = submitDatai;return (reVal);public class CMPP_MSG_SUBMIT_
45、LONGCMPP_MSG_Header header;int _isReportOrSMC = 0;/是否需要狀態(tài)報(bào)告 0 表示不需要,1 需要int _msgTotal = 1; int _msgNumber = 1; int _msgLevel = 0;/相同消息的條數(shù)/消息級(jí)別string _svcCode = "" /業(yè)務(wù)類(lèi)型int _feeUserType = 0;/計(jì)費(fèi)用戶(hù)類(lèi)型字段0:對(duì)目的終端MSISDN 計(jì)費(fèi);1:對(duì)源終端MSISDN 計(jì)費(fèi);2:對(duì)SP 計(jì)費(fèi);3:表示本字段無(wú)效,對(duì)誰(shuí)計(jì)費(fèi)參見(jiàn)Fee_terminal_Id 字段string _feeTermi
46、nalId = "" /被計(jì)費(fèi)終端int _feempType = 0; int _tpPid = 0;int _tpUDHI = 0x01; uint _msgFmt = 0x08;string _msgsrc = ""/消息來(lái)源 即spidstring _feeType = MSG.FeeType.FEE_TERMINAL_PERITEM;/string _feeCode = "" string _valIdTime = "" string _atTime = ""/資費(fèi)/存活期/調(diào)度時(shí)間s
47、tring _srcId = ""int _destUsrNum = 1;/源號(hào)碼,就是在上顯示的號(hào)碼/接受消息的數(shù)string _destTerminalIds = "" /UserMP int _usermpType = 0;int _msgLengt = 0; string _MsgContent = ""UInt64 _MsgID;/返回的消息ID string _LinkID = ""public CMPP_MSG_SUBMIT_LONG(uint MtID)header=newMSG.CMPP_MSG_
48、Header(MSG.CMPP_COMMAND_ID.CMPP_SUBMIT);header.SequenceId = MtID;#region 字段屬性/屬性/ public string MtMsgsetthis._MsgContent = value;byte t = Encoding.ASCII.GetBytes(value);億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-16this._msgLengt = t.Length;public byte byteMsg = new byte140;public int MsgLevelsetthis._msgLevel = value;pub
49、lic string FeeMPsetthis._feeTerminalId = value;public string UserMPsetthis._destTerminalIds = value;public string SPIDsetthis._msgsrc = value;public string ServiceNumsetthis._srcId = value;/可以此處確定長(zhǎng)號(hào)碼public string ServiceIDsetthis._svcCode = value;億陽(yáng)超長(zhǎng)信息發(fā)布軟件V1.0 源代碼60-17public string FeeTypesetthis._
50、feeType = value.PadLeft(2, '0');public string FeeCodesetthis._feeCode = value;public string ValIdTimesetthis._valIdTime = value;public string AtTimesetthis._atTime = value;public UInt64 MsgIDsetthis._MsgID = value;getreturn (this._MsgID);public string LinkIDsetthis._LinkID = value;億陽(yáng)超長(zhǎng)信息發(fā)布軟件
51、V1.0 源代碼60-18/屬性結(jié)束/ #endregionpublic byte toBytes() /返回字節(jié)數(shù)印象byte submitData = new byte800;int index = MSG.CMPP_MSG_Header.HeaderLength;#region 進(jìn)入填充包的過(guò)程/當(dāng)前包的填充指針index = index + 8;/msgid 跳過(guò)submitDataindex+ = (byte)this._msgTotal; submitDataindex+ = (byte)this._msgNumber; submitDataindex+ = (byte)this.
52、_isReportOrSMC; submitDataindex+ = (byte)this._msgLevel;byte svccode = Encoding.ASCII.GetBytes(this._svcCode);svccode.CopyTo(submitData, index);/拷貝到目標(biāo)index = index + 10;/index 增加submitDataindex+ = (byte)this._feeUserType;byte feetid = Encoding.ASCII.GetBytes(this._feeTerminalId); feetid.CopyTo(submitData, index);index = index + 32;submitDataindex+ = (byte)this._feempType; submitDataindex+ = (byte)this._tpPid; submitDataindex+ = (byte)this._tpUDHI; submitDataindex+ = (byte)this._msgF
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 請(qǐng)示整改報(bào)告范文
- HCIA路由交換技術(shù)實(shí)戰(zhàn)(微課版)-課后習(xí)題答案
- 二零二五年度正規(guī)欠款合同范本:商業(yè)保理業(yè)務(wù)合作協(xié)議
- 二零二五養(yǎng)老院院民文化參觀出行合作協(xié)議
- 二零二五年度高端定制門(mén)安裝與設(shè)計(jì)合同
- 二零二五年度電梯維保服務(wù)與智能化升級(jí)合同范本
- 二零二五年度企業(yè)ERP系統(tǒng)采購(gòu)合作協(xié)議
- MySQL教程(新體系-綜合應(yīng)用實(shí)例視頻)(第4版)習(xí)題及答案 -第08章
- 二零二五年度教育行業(yè)年合同制工人養(yǎng)老保險(xiǎn)合同
- 二零二五年度健康養(yǎng)老項(xiàng)目終止合作框架協(xié)議
- 大學(xué)計(jì)算機(jī)概論(Windows10+Office2016)PPT完整全套教學(xué)課件
- 四川峨勝水泥集團(tuán)股份有限公司環(huán)保搬遷3000td熟料新型干法大壩水泥生產(chǎn)線環(huán)境影響評(píng)價(jià)報(bào)告書(shū)
- 《公路工程計(jì)量與計(jì)價(jià)》說(shuō)課草稿
- 2023年教師招聘面試高中政治《堅(jiān)持以人民為中心》試講稿 統(tǒng)編版 必修三
- Barrett食管醫(yī)學(xué)知識(shí)講解
- 數(shù)獨(dú)課件完整版
- 西師大版六年級(jí)數(shù)學(xué)下冊(cè)全冊(cè)知識(shí)點(diǎn)匯總
- DCF-現(xiàn)金流貼現(xiàn)模型-Excel模版(dcf-估值模型)
- 江西2023年分宜九銀村鎮(zhèn)銀行社會(huì)招聘上岸提分題庫(kù)3套【500題帶答案含詳解】
- 一年級(jí)美術(shù)課后服務(wù)教案-1
- GB/T 22095-2008鑄鐵平板
評(píng)論
0/150
提交評(píng)論