关于pcommvb.net的信息

求围棋的VB源代码~来~加我的QQ405557154 我做了一个,还有一同学做的,还有一是网上的朋友做的呵呵
Private Sub Timer1_Timer()
Dim ms As Boolean
Dim Info, temp As String
Dim p, p1, p2, i As Integer
Dim Ch
' Begin of Time Show Process
If ModemStateLOGIN And SocketStateCONNECTED Then
'it is not a multiusers game
Exit Sub
Else
If (S_R = 1) And (TURN = BLACKP) Then
Black_Time = Black_TimeTime - Start_Time
TimeB.Caption = CDate(Black_Time / 200)
Else
If (S_R = 1) And (TURN = WHITEP) Then
White_Time = White_TimeTime - Start_Time
TimeW.Caption = CDate(White_Time / 200)
Else
If (S_R = 0) And (TURN = WHITEP) Then
Black_Time = Black_TimeTime - Start_Time
TimeB.Caption = CDate(Black_Time / 200)
Else
If (S_R = 0) And (TURN = BLACKP) Then
White_Time = White_TimeTime - Start_Time
TimeW.Caption = CDate(White_Time / 200)
End If
End If
End If
End If
End If
'End If
' End of Time Show Process
'Begin of winsockt process
If SocketState = CONNECTED And Begin_Flag = 1 Then
ms = Net.Message_Exist
If ms = False Then
Exit Sub
End If
Info = Net.WaitForValue(Chr$(26), 5)
If g_ErrorCode = 1 Then
'Some error such as Timeout occured
Exit Sub
End If
p1 = InStr(Info, "B")
p2 = InStr(Info, "E|;")
If p1 = 0 Or p2 = 0 Then
Exit Sub
End If
temp = Mid$(Info, p11, p2 - p1 - 1)
ParseLine (temp)
Msg(Msg_No).No = CInt(ParseArray(1))
Msg(Msg_No).Color = CInt(ParseArray(2))
If IsNumeric(ParseArray(3)) Then
Msg(Msg_No).X = CInt(ParseArray(3))
Msg(Msg_No).Y = CInt(ParseArray(4))
Else
Msg(Msg_No).X = ParseArray(3)
Msg(Msg_No).Y = ParseArray(4)
End If
If Msg(Msg_No).Color = GIVEUP Then
Beep
MsgBox ("对方已经认输了")
Net.Winsock1.SendData ("R_O"Chr$(26))
Pause 3
Call Begin_Click
Exit Sub
End If
If Side = BLACKP Then
p = Draw_Point(Msg(Msg_No).X, Msg(Msg_No).Y, WHITEP)
Record(Step).Color = WHITEP
step_show.Cls
step_show.Print Step
TURN = BLACKP
Else
p = Draw_Point(Msg(Msg_No).X, Msg(Msg_No).Y, BLACKP)
Record(Step).Color = BLACKP
step_show.Cls
step_show.Print Step
TURN = WHITEP
End If
Record(Step).X = Msg(Msg_No).X
Record(Step).Y = Msg(Msg_No).Y
Step = Step1
S_R = 1
R_R = 0
p = Count_All_Gas
If (Msg(Msg_No).X0 And Msg(Msg_No).Y0 _
And Msg(Msg_No).X20 And Msg(Msg_No).Y20) Then
Board(Msg(Msg_No).X, Msg(Msg_No).Y).Current = True
Refresh_Board
Board(Msg(Msg_No).X, Msg(Msg_No).Y).Current = False
End If
Msg_No = Msg_No1
Pause 1
Net.Winsock1.SendData ("R_O"Chr$(26))
Exit Sub
End If
'End of process of winsocket
'Begin of modem process
If ModemStateLOGIN Or R_R1 Then
'It isn't a Inter_Modem Game
Exit Sub
End If
ms = Modem_F.Exist_Msg
If ms = False Then
'IO Port don't have any message
Exit Sub
End If
Info = Modem_F.WaitForValue(Chr$(26), 5)
'Wait a playing message
If g_ErrorCode = 1 Then
'Some error such as Timeout occured
Exit Sub
End If
p1 = InStr(Info, "B")
p2 = InStr(Info, "E|;")
If p1 = 0 Or p2 = 0 Then
Exit Sub
End If
temp = Mid$(Info, p11, p2 - p1 - 1)
ParseLine (temp)
Msg(Msg_No).No = CInt(ParseArray(1))
Msg(Msg_No).Color = CInt(ParseArray(2))
If IsNumeric(ParseArray(3)) Then
Msg(Msg_No).X = CInt(ParseArray(3))
Msg(Msg_No).Y = CInt(ParseArray(4))
Else
Msg(Msg_No).X = ParseArray(3)
Msg(Msg_No).Y = ParseArray(4)
End If
Modem_F.Comm1.InBufferCount = 0
'Clear Buffer
If Msg(Msg_No).Color = LOGOUT Then
Beep
MsgBox ("对方已经退出了")
Modem_F.Comm1.InBufferCount = 0
Modem_F.Comm1.Output = "R_O"Chr$(26)
Cls
Step = 0
Start_Time = Time
Black_Time = 0
White_Time = 0
Exit Sub
End If
If Msg(Msg_No).Color = FINISHED Then
Beep
Ch = MsgBox("对方要求结束比赛,可以吗?", vbYesNo)
Modem_F.Comm1.InBufferCount = 0
If Ch = 6 Then
Modem_F.Comm1.Output = "YESR_O"Chr$(26)
Else
Modem_F.Comm1.Output = "NOR_O"Chr$(26)
Exit Sub
End If
PlayState = FINISHED
Count_Area.Enabled = True
End If
If Msg(Msg_No).Color = GIVEUP Then
Beep
MsgBox ("对方已经认输了")
Modem_F.Comm1.InBufferCount = 0
Modem_F.Comm1.Output = "R_O"Chr$(26)
Call Begin_Click
Exit Sub
End If
If Msg(Msg_No).Color = TALK Then
Beep
MsgBox (Modem_F.His_Name.Text"说:"Msg(Msg_No).X)
Modem_F.Comm1.InBufferCount = 0
Modem_F.Comm1.Output = "R_O"Chr$(26)
Exit Sub
End If
If Msg(Msg_No).Color = UNDO Then
Step = Step - 1
Beep
Modem_F.Comm1.InBufferCount = 0
Modem_F.Comm1.Output = "R_O"Chr$(26)
Draw_Board
Ini_Board
For i = 1 To Step - 1
Board(Record(i).X, Record(i).Y).Current = False
p = Draw_Point(Record(i).X, Record(i).Y, Record(i).Color)
step_show.Cls
step_show.Print Step
p = Count_All_Gas
Next i
Board(Record(Step - 1).X, Record(Step - 1).Y).Current = True
Refresh_Board
Board(Record(Step - 1).X, Record(Step - 1).Y).Current = False
S_R = 1
R_R = 0
TURN = Side
Exit Sub
End If
Modem_F.Comm1.InBufferCount = 0
Modem_F.Comm1.Output = "R_O"Chr$(26)
If Side = BLACKP Then
p = Draw_Point(Msg(Msg_No).X, Msg(Msg_No).Y, WHITEP)
Record(Step).Color = WHITEP
step_show.Cls
step_show.Print Step
Else
p = Draw_Point(Msg(Msg_No).X, Msg(Msg_No).Y, BLACKP)
Record(Step).Color = BLACKP
step_show.Cls
step_show.Print Step
End If
Record(Step).X = Msg(Msg_No).X
Record(Step).Y = Msg(Msg_No).Y
Step = Step1
S_R = 1
R_R = 0
p = Count_All_Gas
If (Msg(Msg_No).X0 And Msg(Msg_No).Y0 _
And Msg(Msg_No).X20 And Msg(Msg_No).Y20) Then
Board(Msg(Msg_No).X, Msg(Msg_No).Y).Current = True
Refresh_Board
Board(Msg(Msg_No).X, Msg(Msg_No).Y).Current = False
End If
Msg_No = Msg_No1
End Sub
Private Sub Timer2_Timer()
ShowS.Cls
ShowS.Print " :-):-):-):-):-) "Show_String(C1)" (:-(:-(:-(:-(:-"
C1 = C11
If C1 = 10 Then
C1 = 0
End If
Game_Time.Cls
Game_Time.Print "现在时间:"Time
End Sub
Private Sub Set_Hand(h As Integer)
'设置让子(1-9)
Dim p As Integer
If h = 1 Then
'Not a Handicap game
Exit Sub
End If
部分代码 。。
文件的扩展名有那些,各是是什么意思?如exe,gif,mp3exe 执行程序文件
gif 图片扩展名
mp3 音频扩展名
常见文件扩展名和它们的说明
A
ACE:Ace压缩档案格式
ACT:Microsoft office助手文件
AIF,AIFF:音频互交换文件,Silicon Graphic and Macintosh应用程序的声音格式
ANI:Windows系统中的动画光标
ARC:LH ARC的压缩档案文件
ARJ:Robert Jung ARJ压缩包文件
ASD:Microsoft Word的自动保存文件;Microsoft高级流媒体格式(microsoft advanced streaming
format,ASF)的描述文件;可用NSREX打开 Velvet Studio例子文件
ASF:Microsoft高级流媒体格式文件
ASM:汇编语言源文件,Pro/E装配文件
ASP:动态网页文件;ProComm Plus安装与连接脚本文件;Astound介绍文件
AST:Astound多媒体文件;ClarisWorks“助手”文件
Axx:ARJ压缩文件的分包序号文件,用于将一个大文件压至几个小的压缩包中(xx取01-99的数字)
A3L:Authorware 3.x库文件
A4L:Authorware 4.x库文件
A5L:Authorware 5.x库文件
A3M,A4M:Authorware Macintosh未打包文件
A3W,A4W,A5W:未打包的Authorware Windows文件
B
BAK:备份文件
BAS:BASIC源文件
BAT:批处理文件
BIN:二进制文件
BINHex:苹果的一种编码格式
BMP:Windows或OS/2位图文件
BOOK:Adobe FrameMaker Book文件
BOX:Lotus Notes的邮箱文件
BPL:Borlard Delph 4打包库
BSP:Quake图形文件
BUN:CakeWalk 声音捆绑文件(一种MIDI程序)
C
C0l:台风波形文件
CAB:Microsoft压缩档案文件
CAD:Softdek的Drafix CAD文件
CAM:Casio照相机格式
CAP:压缩音乐文件格式
CAS:逗号分开的ASCⅡ文件
CCB:Visual Basic动态按钮配置文件
CCH:Corel图表文件
CCO:CyberChat数据文件
CCT:Macromedia Director Shockwave投影
CDA:CD音频轨道
CDF:Microsoft频道定义格式文件
CDI:Philip的高密盘交互格式
CDM:Visual dBASE自定义数据模块文件
CDR:CorelDRAW绘图文件;原始音频CD数据文件
CDT:CorelDRAW模板
CDX:CorelDRAW压缩绘图文件;Microsoft Visual FoxPro索引文件
CFG:配置文件
CGI:公共网关接口脚本文件
CGM:计算机图形元文件
CH:OS/2配置文件
CHK:由Windows磁盘碎片整理器或磁盘扫描保存的文件碎片
CHM:编译过的HTML文件
CHP:Ventura Publisher章节文件
CHR:字符集(字体文件)
CHT:ChartViem文件;Harvard Graphics矢量文件
CIF:Adaptec CD 创建器 CD映像文件
CIL:Clip Gallery下载包
CIM:SimCity 2000文件
CIN:OS/2改变控制文件用于跟踪INI文件中的变化
CLASS:Java类文件
CLP:Windows 剪贴板文件
CLL:Crick Software Clicker文件
CLS:Visual Basic类文件
CMD:Windows NT , OS/2的命令文件;DOS CD/M命令文件;dBASEⅡ程序文件
CPI:Microsoft MS-DOS代码页信息文件
CPL:控制面板扩展名,Corel颜色板
CPP:C代码文件
CPR:Corel提供说明书文件
CPT:Corel 照片-绘画图像
CST:Macromedia Director Cast文件
CUR:Windows光标文件
D
DBF:dBASE文件,一种由Ashton-Tate创建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和类似数据库或与数据库有关产品识别;可用数据文件(能被Excel
97打开);Oracle 8.1.x表格空间文件
DBX:DataBearn图像;Microsoft Visual FoxPro表格文件
DCT:Microsoft Visual FoxPro数据库容器
DCU:Delphi编译单元文件
DCX:Microsoft Visual FoxPro数据库容器;基于PCX的传真图像;宏
DIR:MacromediaDirector文件
DLL:动态链接库
DOC:FrameMaker或FrameBuilder文档;Word Star文档、Word
Perfect文档、Microsoft:Word文档;DisplayWrite文档
DOT:Microsoft Word文档模板
DPL:Borland Delph 3压缩库
DRV:驱动程序
DRW:Micrografx Designer/Draw;Pro/E绘画文件
DSF:Micrografx Designer VFX文件
DSG:DOOM保存的文件
DSM:Dynamic Studio音乐模块(MOD)文件
DSP:Microsoft Developer Studio工程文件
DSQ:Corel QUERY(查询)文件
DST:刺绣机图形文件
DSW:Microsoft Developer Studio工作区文件
DTA:World Bank(世界银行)的STARS数据文件
DTD:SGML文档类型定义(DTD)文件
DTED:地面高度数字数据(图形的数据格式)文件
DTF:Symantec QA相关的数据库数据文件
DTM:DigiTrakker模块文件
DUN:Microsoft拔号网络导出文件
DV:数字视频文件(MIME)
DWG:AutoCAD工程图文件;AutoCAD或Generic CADD老版本的绘图格式
DXR:Macromedia Director受保护(不可编辑)电影文件
E
EDA:Ensoniq ASR磁盘映像
EDD:元素定义文档(FrameMaker SGML文档)
EDE:Ensoniq EPS磁盘映像
EDK:Ensoniq KT磁盘映像
EDQ:Ensoniq SQ1/SQ2/Ks32磁盘映像
EDS:Ensoniq SQ80磁盘映像
EDV:Ensoniq VFX-SD磁盘映像
EFA:Ensoniq ASR文件
EFE:Ensoniq EPS文件
EFK:Ensoniq KT文件
EFQ:Ensoniq SQ1/SQ2/Ks32文件
EFS:Ensoniq SQ80文件
EFV:Ensoniq VFX-SD文件
EMD:ABT扩展模块
EMF:Windows增强元文件
EML:Microsoft Outlook Express邮件消息(MIME RTC822)文件
EXE:可执行文件(程序)
F
FAV:Microsoft Outlook导航条
FAX:传真类型图像
FCD:虚拟CD-ROM
FDF:Adobe Acrobat表单文档文件
FLA:Macromedia Flash电影
FND:Microsoft Explorer保存的搜索文件(Find applet)
FON:系统字体
FRT:Microsoft FoxPro报表文件
FRX:Visual Basic表单文本;Microsoft FoxPro报表文件
FXP:经Microsoft FoxPro编译的源文件
G
GDM:铃声、口哨声和声音板模块格式
GetRight:GetRight未完成的下载文件
GHO:Norton 克隆磁盘映像
GID:Windows 95全局索引文件(包括帮助状态)
GIF:CompuServe位图文件
GL:动画格式
GRP:程序管理组
H
HEX:Macintosh BinHex2.0文件
HLP:帮助文件;Date CAD Windows帮助文件
HPP:C程序头文件
HQX:Macintosh BinHex 4.0文件
HT:HyperTerminal(超级终端)
HTM,HTML:超文本文档
HTT:Microsoft超文本模板
HTX:扩展HTML模板
I
ICO:Windows图标
IDX:Microsoft FoxPro相关数据库索引文件;Symantec QA相关数据库索引文件;Microsoft Outlook
Express文件
IMG:GEM映像
INF:信息文件
INI:初始化文件;Mwave DSP Synth的“nwsynth.ini” GMS安装;Cravis Ultrasound bank安装
INP:Oracle 3.0版或早期版本的表单源代码
INRS:INRS远程通信声频
INS:InstallShield安装脚本;X-Internet签字文件;Ensoniq EPS字簇设备;Cell/ⅡMAC/PC抽样设备
INT:中间代码,当一个源程序经过语法检查后编译产生一个可执行代码
IOF:Findit文档
IQY:Microsoft Internet查询文件
ISO:根据ISD 9660有关CD-ROM文件系统标准列出CD-ROM上的文件
ISP:X-Internet签字文件
IST:数字跟踪设备文件
ISU:InstallShield卸装脚本
IT:脉冲跟踪系统音乐模块(MOD)文件
ITI:脉冲跟踪系统设备
ITS:脉冲跟踪系统抽样,Internet文档位置
IV:Open Inventor中使用的文件格式
IVD:超过20/20微观数据维数或变量等级文件
IVP:超过20/20的用户子集配置文件
IVT:超过20/20表或集合数据文件
IVX:超过20/20微数据目录文件
IW:Idlewild屏幕保护程序
IWC:Install Watch文档
J
J62:Ricoh照相机格式
JAR:Java档案文件(一种用于applet和相关文件的压缩文件)
JAVA:Java源文件
JAR:Java档案文件(一种用于applet和相关文件的压缩文件)
JAVA:Java源文件
JFF,JFIF , JIF:JPEG文件
JPE , JPEG,JPG:JPEG图形文件
JS:javascript源文件
JSP:HTML网页,其中包含有对一个Java servlet的参考
K
KAR:卡拉OK MIDI文件(文本 MIDI)
L
LAB:Visual dBASE标签文件
LBT,LBX:Microsoft FoxPro标签文件
LDB:Microsoft Access加锁文件
LHA:LZH更换文件后缀
LOG:日志文件
LZH:LH ARC压缩档案
M
M1V:MPEG相关文件(MIME"mpeg"类型)
M3D:Corel Motion 3D动画文件
M3U:MPEG URL(MIME声音文件)
MAM:Microsoft Access宏
MAQ:Microsoft Access查询文件
MAR:Microsoft Access报表文件
MBX:Microsoft Outlook保存email格式;Eudora邮箱
MCW:Microsoft Word的Macintosh文档
MDB:Microsoft Access数据库
MDN:Microsoft Access空数据库模板
MDW:Microsoft Access工作组文件
MID:MIDI音乐
MMM:Microsoft多媒体电影
MOV:QuickTime for Windows电影
MP2:第二层MPEG音频文件
MP3:第三层MPEG音频文件
MPA:MPEG相关文件,MIME“mpeg类型”
MPE , MPEG,MPG:MPEG动画文件
MPP:Microsoft工程文件;CAD绘图文件格式
MPR:Microsoft FoxPro菜单(已编译)
MSI:Windows 安装器包
MSN:Microsoft 网络文档;Descent Mission文件
O
OBD:Microsoft Office活页夹
OBJ:对象文件
OBZ:Microsoft Office活页夹向导
OCX:Microsoft对象链接与嵌入定制控件
ODS:Microsoft Outlook Express邮箱文件
OFT:Microsoft Outlook模板
OPX:OPL扩展DLL(动态链接库)
OSS:Microsoft Office查找文件
OST:Microsoft Exchange / Outlook 离线文件
P
PAL:压缩文件
PART:Go!Zilla部分下载文件
PAS:Pascal源代码
PCS:PICS动画文件
PDF:Adobe Acrobat
可导出文档格式文件(可用Web浏览器显示);Microsoft系统管理服务器包定义文件;NetWare打印机定义文件
PHP,PHP3:包含有PHP脚本的HTML网页
PHTML:包含有PHP脚本的HTML网页;由Perl分析解释的HTML
PM5:Pagemaker 5.0文件
PM6:Pagemaker 6.0文件
PPS:Microsoft Powerpoint幻灯片放映
PPT:Microsoft Powerpoint演示文稿
PRF:Windows系统文件,Macromedia导演设置文件
PSD:Adobe photoshop位图文件
PSM:Protracker Studio模型格式;Epic游戏的源数据文件
PST:Microsoft Outlook个人文件夹文件
PWL:Windows 95口令列表文件
Q
QIF:QuickTime相关图像(MIME);Quicken导入文件
QT,QTM:QuickTime电影
QTI,QTIF:QuickTime相关图像
QTP:QuickTime优先文件
QTS:Mac PICT图像文件;QuickTime相关图像
QTX:QuickTime相关图像
R
RA:RealAudio声音文件
RAM:RealAudio元文件
RAR:RAR压缩档案(Eugene Roshall格式)
REC:录音机宏;RapidComm声音文件
REG:注册表文件
REP:Visual dBASE报表文件
RES:Microsoft Visual C资源文件
RM:RealAudio视频文件
RMF:Rich Map格式(3D游戏编辑器使用它来保存图)
ROM:基于盒式磁带的家庭游戏仿真器文件(来自Atari
2600、Colecovision、Sega、Nintendo等盒式磁带里的ROM完全拷贝,在两个仿真器之间不可互修改)
Rxx:多卷档案上的RAR压缩文件(xx=1~99间的一个数字)
S
SAV:游戏保存文件
SB:原始带符号字节(8位)数据
SBK:Creative Labs的Soundfont 1.0 Bank文件;(Soundb laster)/EMU SonndFont v1.x
Bank文件
SBL:Shockwave Flash对象文件
SCF:Windows Explorer命令文件
SCH:Microsoft Schedule 1
SCP:拨号网络脚本文件
SCR:Windows屏幕保护;传真图像;脚本文件
SFX:RAR自解压档案
SHTML:含有服务器端包括(SSI)的HTML文件
SPL:Shockwave Flash对象;DigiTrakker抽样
SQL:Informix SQL查询;通常被数据库产品用于SQL查询(脚本、文本、二进制)的文件扩展名
STM:.shtml的短后缀形式,含有一个服务端包括(SSI)的HTML文件;Scream Tracker V2音乐模块(MOD)文件
STR:屏幕保护文件
SWA:在Macromedia导演文件(MP3文件)中的Shockwave声音文件 SYS:系统文件
T
T64:Commodore 64仿真器磁带映像文件
THEME:Windows 95桌面主题文件
TIF,TIFF:标签图像文件格式(TIFF)位图
TMP:Windows临时文件
TRM:终端文件
TXT:ASCⅡ文本格式的声音数据
TZ:老的压缩格式文件
V
VBA:VBase文件
VBP:Microsoft Visual Basic工程文件
VBW:Microsoft Visual Basic工作区文件
VBX:Microsoft Visual Basic用户定制控件
VQE,VQL:Yamaha Sound-VQ定位器文件
VQF:Yamaha Sound-VQ文件(可能出现标准)
VRF:Oracle 7配置文件
VSL:下载列表文件(GetRight)
W
WAB:Microsoft Outlook文件
WAD:包含有视频、玩家水平和其他信息的DOOM游戏的大文件
WAL:Quake 2正文文件
WAV:Windows波形声形
WBK:Microsoft Word备份文件
WFM:Visual dBASE Windows表单
WFN:在CorelDRAW中使用的符号
WIZ:Microsoft Word向导
WRL:虚拟现实模型
WWL:Microsoft Word内插器文件
X
XLK:Microsoft Excel备份
XLL:Microsoft Excel内插器文件
XLM:Microsoft Excel宏
XLS:Microsoft Excel工作单
XLT:Microsoft Excel模板
XLV:Microsoft Excel VBA模块
XLW:Microsoft Excel工作簿/工作区
Z
ZAP:Windows软件安装配置文件
ZIP:Zip文件
000-999:用于为老版本(或备份)文件编号(比如:被安装程序改变的CONFIG.SYS文件);又可用于为小范围的PC应用程序的多个用户相关数据文件编号
12M:Lotus 1-2-3 97 SmartMaster文件
123:Lotus 1-2-3 97文件
2D:VersaCAD的2维绘画文件
2GR,3GR:在Windows之下的VGA图形驱动程序/配置文件
386:在386或更高级处理器上使用的文件
3D:VersaCAD的3维绘画文件
3DM:3D NURBS建模器,Rhino
3DS:3D Studio(DOS下)格式文件
386:在386或更高级处理器上使用的文件
4GE:Informix 4GL编译后代码
4GL:Informix 4GL源代码
669:Composer 669;UNIX Composer音乐模型文件;669磁道模块
#01 及更高的号:为计算机演示而扫描的一系列电影的图片文件编号方法
$$$:OS/2用来跟踪档案文件
用vb.net做串口通讯程序要调用哪些api函数?串口API通信函数编程
16位串口应用程序中,使用的16位的Windows API通信函数:
①OpenComm()打开串口资源 , 并指定输入、输出缓冲区的大?。ㄒ宰纸诩疲?
CloseComm() 关闭串口;
例:int idComDev;
idComDev = OpenComm("COM1", 1024, 128);
CloseComm(idComDev);
②BuildCommDCB() 、setCommState()填写设备控制块DCB,然后对已打开的串口进行参数配置; 例:DCB dcb;
BuildCommDCB("COM1:2400,n,8,1", dcb);
SetCommState(dcb);
③ ReadComm 、WriteComm()对串口进行读写操作,即数据的接收和发送.
例:char *m_pRecieve; int count;
ReadComm(idComDev,m_pRecieve,count);
Char wr[30]; int count2;
WriteComm(idComDev,wr,count2);
16位下的串口通信程序最大的特点就在于:串口等外部设备的操作有自己特有的API函数;而32位程序则把串口操作(以及并口等)和文件操作统一起来了,使用类似的操作 。
在MFC下的32位串口应用程序
32位下串口通信程序可以用两种方法实现:利用ActiveX控件;使用API 通信函数 。
使用ActiveX控件 , 程序实现非常简单,结构清晰,缺点是欠灵活;使用API 通信函数的优缺点则基本上相反 。
使用ActiveX控件:
VC6.0提供的MSComm控件通过串行端口发送和接收数据,为应用程序提供串行通信功能 。使用非常方便,但可惜的是,很少有介绍MSComm控件的资料 。
⑴.在当前的Workspace中插入MSComm控件 。
Project菜单------Add to Project----Components and Controls-----Registered
ActiveX Controls---选择Components: Microsoft Communications Control,
version 6.0 插入到当前的Workspace中 。
结果添加了类CMSComm(及相应文件:mscomm.h和mscomm.cpp ) 。
⑵.在MainFrm.h中加入MSComm控件 。
protected:
CMSComm m_ComPort;
在Mainfrm.cpp::OnCreare()中:
DWORD style=WS_VISIBLE|WS_CHILD;
if (!m_ComPort.Create(NULL,style,CRect(0,0,0,0),this,ID_COMMCTRL)){
TRACE0("Failed to create OLE Communications Control\n");
return -1;// fail to create
}
⑶.初始化串口
m_ComPort.SetCommPort(1);//选择COM?
m_ComPort. SetInBufferSize(1024); //设置输入缓冲区的大小,Bytes
m_ComPort. SetOutBufferSize(512); //设置输入缓冲区的大小,Bytes//
if(!m_ComPort.GetPortOpen()) //打开串口
m_ComPort.SetPortOpen(TRUE);
m_ComPort.SetInputMode(1); //设置输入方式为二进制方式
m_ComPort.SetSettings("9600,n,8,1"); //设置波特率等参数
m_ComPort.SetRThreshold(1); //为1表示有一个字符引发一个事件
m_ComPort.SetInputLen(0);
⑷.捕捉串口事项 。MSComm控件可以采用轮询或事件驱动的方法从端口获取数据 。pcommvb.net我们介绍比较使用的事件驱动方法:有事件(如接收到数据)时通知程序 。在程序中需要捕获并处理这些通讯事件 。
在MainFrm.h中:
protected:
afx_msg void OnCommMscomm();
DECLARE_EVENTSINK_MAP()
在MainFrm.cpp中:
BEGIN_EVENTSINK_MAP(CMainFrame,CFrameWnd )
ON_EVENT(CMainFrame,ID_COMMCTRL,1,OnCommMscomm,VTS_NONE) //映射ActiveX控件事件
END_EVENTSINK_MAP()
⑸.串口读写. 完成读写的函数的确很简单 , GetInput()和SetOutput()就可 。两个函数的原型是:
VARIANT GetInput();及 void SetOutput(const VARIANT newValue);都要使用VARIANT类型(所有Idispatch::Invoke的参数和返回值在内部都是作为VARIANT对象处理的) 。
无论是在PC机读取上传数据时还是在PC机发送下行命令时,pcommvb.net我们都习惯于使用字符串的形式(也可以说是数组形式) 。查阅VARIANT文档知道,可以用BSTR表示字符串,但遗憾的是所有的BSTR都是包含宽字符,即使pcommvb.net我们没有定义_UNICODE_UNICODE也是这样pcommvb.net! WinNT支持宽字符, 而Win95并不支持 。为解决上述问题 , 我们在实际工作中使用CbyteArray,给出相应的部分程序如下:
void CMainFrame::OnCommMscomm(){
VARIANT vResponse;int k;
if(m_commCtrl.GetCommEvent()==2) {
k=m_commCtrl.GetInBufferCount(); //接收到的字符数目
if(k0) {
vResponse=m_commCtrl.GetInput(); //read
SaveData(k,(unsigned char*) vResponse.parray-pvData);
} // 接收到字符,MSComm控件发送事件 }
。。。。。// 处理其他MSComm控件
}
void CMainFrame::OnCommSend() {
。。。。。。。。// 准备需要发送的命令,放在TxData[]中
CByteArray array;
array.RemoveAll();
array.SetSize(Count);
for(i=0;iCount;i)
array.SetAt(i, TxData[i]);
m_ComPort.SetOutput(COleVariant(array)); // 发送数据 }
二 使用32位的API 通信函数:
⑴.在中MainFrm.cpp定义全局变量
HANDLEhCom; // 准备打开的串口的句柄
HANDLEhCommWatchThread ;//辅助线程的全局函数
⑵.打开串口 , 设置串口
hCom =CreateFile( "COM2", GENERIC_READ | GENERIC_WRITE, // 允许读写
0,// 此项必须为0
NULL,// no security attrs
OPEN_EXISTING,//设置产生方式
FILE_FLAG_OVERLAPPED, // 我们准备使用异步通信
NULL );
我使用了FILE_FLAG_OVERLAPPED结构 。这正是使用API实现非阻塞通信的关键所在 。
ASSERT(hCom!=INVALID_HANDLE_VALUE); //检测打开串口操作是否成功
SetCommMask(hCom, EV_RXCHAR|EV_TXEMPTY );//设置事件驱动的类型
SetupComm( hCom, 1024,512) ; //设置输入、输出缓冲区的大小
PurgeComm( hCom, PURGE_TXABORT | PURGE_RXABORT | PURGE_TXCLEAR
| PURGE_RXCLEAR ); //清干净输入、输出缓冲区
COMMTIMEOUTS CommTimeOuts ; //定义超时结构,并填写该结构
…………
SetCommTimeouts( hCom, CommTimeOuts ) ;//设置读写操作所允许的超时
DCBdcb ; // 定义数据控制块结构
GetCommState(hCom, dcb ) ; //读串口原来的参数设置
dcb.BaudRate =9600; dcb.ByteSize =8; dcb.Parity = NOPARITY;
dcb.StopBits = ONESTOPBIT ;dcb.fBinary = TRUE ;dcb.fParity = FALSE;
SetCommState(hCom, dcb ) ; //串口参数配置
上述的COMMTIMEOUTS结构和DCB都很重要,实际工作中需要仔细选择参数 。
⑶启动一个辅助线程,用于串口事件的处理 。
Windows提供了两种线程,辅助线程和用户界面线程 。辅助线程没有窗口,所以它没有自己的消息循环 。但是辅助线程很容易编程,通常也很有用 。
在次 , 我们使用辅助线程 。主要用它来监视串口状态,看有无数据到达、通信有无错误;而主线程则可专心进行数据处理、提供友好的用户界面等重要的工作 。
hCommWatchThread=
CreateThread( (LPSECURITY_ATTRIBUTES) NULL, //安全属性
0,//初始化线程栈的大?。笔∥胫飨叱檀笮∠嗤?
(LPTHREAD_START_ROUTINE)CommWatchProc, //线程的全局函数
GetSafeHwnd(), //此处传入了主框架的句柄
0, dwThreadID );
ASSERT(hCommWatchThread!=NULL);
⑷为辅助线程写一个全局函数,主要完成数据接收的工作 。请注意OVERLAPPED结构的使用,以及怎样实现了非阻塞通信 。
UINT CommWatchProc(HWND hSendWnd){
DWORD dwEvtMask=0 ;
SetCommMask( hCom, EV_RXCHAR|EV_TXEMPTY );//有哪些串口事件需要监视pcommvb.net?
WaitCommEvent( hCom, dwEvtMask, os );// 等待串口通信事件的发生
检测返回的dwEvtMask , 知道发生了什么串口事件:
if ((dwEvtMaskEV_RXCHAR) == EV_RXCHAR){ // 缓冲区中有数据到达
COMSTAT ComStat ; DWORD dwLength;
ClearCommError(hCom, dwErrorFlags, ComStat ) ;
dwLength = ComStat.cbInQue ; //输入缓冲区有多少数据?
if (dwLength0) {BOOL fReadStat ;
fReadStat = ReadFile( hCom, lpBuffer,dwLength, dwBytesRead,READ_OS( npTTYInfo ) ); //读数据
注:我们在CreareFile()时使用了FILE_FLAG_OVERLAPPED,现在ReadFile()也必须使用
LPOVERLAPPED结构.否则,函数会不正确地报告读操作已完成了.
使用LPOVERLAPPED结构, ReadFile()立即返回,不必等待读操作完成,实现非阻塞
通信.此时, ReadFile()返回FALSE, GetLastError()返回ERROR_IO_PENDING.
if (!fReadStat){
if (GetLastError() == ERROR_IO_PENDING){
while(!GetOverlappedResult(hCom,READ_OS( npTTYInfo ),dwBytesRead, TRUE )){
dwError = GetLastError();
if(dwError == ERROR_IO_INCOMPLETE) continue;//缓冲区数据没有读完,继续
…… ……
::PostMessage((HWND)hSendWnd,WM_NOTIFYPROCESS,0,0);//通知主线程 , 串口收到数据}
所谓的非阻塞通信 , 也即异步通信 。是指在进行需要花费大量时间的数据读写操作(不仅仅是指串行通信操作)时,一旦调用ReadFile()、WriteFile(), 就能立即返回,而让实际的读写操作在后台运行;相反,如使用阻塞通信,则必须在读或写操作全部完成后才能返回 。由于操作可能需要任意长的时间才能完成,于是问题就出现了 。
非常阻塞操作还允许读、写操作能同时进行(即重叠操作?),在实际工作中非常有用 。
要使用非阻塞通信,首先在CreateFile()时必须使用FILE_FLAG_OVERLAPPED;然后在 ReadFile()时lpOverlapped参数一定不能为NULL , 接着检查函数调用的返回值,调用GetLastError(),看是否返回ERROR_IO_PENDING 。如是,最后调用GetOverlappedResult()返回重叠操作(overlapped operation)的结果;WriteFile()的使用类似 。
⑸.在主线程中发送下行命令 。
BOOLfWriteStat ; char szBuffer[count];
…………//准备好发送的数据,放在szBuffer[]中
fWriteStat = WriteFile(hCom, szBuffer, dwBytesToWrite,
dwBytesWritten, WRITE_OS( npTTYInfo ) ); //写数据
//我在CreareFile()时使用了FILE_FLAG_OVERLAPPED,现在WriteFile()也必须使用LPOVERLAPPED结构.否则,函数会不正确地报告写操作已完成了.
使用LPOVERLAPPED结构,WriteFile()立即返回,不必等待写操作完成,实现非阻塞 通信.此时, WriteFile()返回FALSE, GetLastError()返回ERROR_IO_PENDING.
int err=GetLastError();
if (!fWriteStat) {
if(GetLastError() == ERROR_IO_PENDING){
while(!GetOverlappedResult(hCom, WRITE_OS( npTTYInfo ),
dwBytesWritten, TRUE )) {
dwError = GetLastError();
if(dwError == ERROR_IO_INCOMPLETE){// normal result if not finished
dwBytesSent= dwBytesWritten; continue; }
......................
//我使用了多线程技术,在辅助线程中监视串口,有数据到达时依靠事件驱动,读入数据并向主线程报告(发送数据在主线程中 , 相对说来,下行命令的数据总是少得多);并且,WaitCommEvent()、ReadFile()、WriteFile()都使用了非阻塞通信技术,依靠重叠(overlapped)读写操作,让串口读写操作在后台运行 。
装IIS的时候弹出找不到 i386文件...IIS安装的过程中需要使用系统光盘,在系统光盘的I386文件夹中有所需要的组件 。
可以百度搜索IIS安装包,这种安装包只包含IIS需要的组件,在安装过程中指向这个文件夹即可完全安装iis 。
IIS组件包括文件:
192.DN_
ACHG.AS_
ACTCONN.HT_
ACTDONE.HT_
ACTIV.HT_
ACTIVERR.HT_
ACTIVSVC.HT_
ACTLAN.HT_
ACTSHELL.HT_
ACWEBSVC.DL_
ADESKERR.HT_
ADMIN.DL_
ADMWPROX.DL_
ADRDYREG.HT_
ADROT.DL_
adsiis.dll
ADSIIS.DL_
ADSUTIL.VB_
AEXP2B.AS_
AEXP4B.AS_
APOLICY.HT_
APPSRV.MS_
APRVCYMS.HT_
AQUEUE.DL_
AREG1.HT_
AREGDIAL.HT_
AREGDONE.HT_
ASP.DL_
ASP.MF_
ASP.MO_
ASPADS.IN_
ASPNETOC.DL_
ASPPERF.DL_
ATT.HT_
AUSRINFO.HT_
AUTHOR.DL_
AXCTRNM.H2_
AXPERF.IN_
BITSMGR.DL_
BITSSRV.DL_
BLANK.HT_
BLUEBARH.GI_
BLUEBARV.GI_
BLUE_SS.DL_
BOOT._
BRMFPORT.IN_
BROWSCAP.DL_
BROWSCAP.IN_
CACHE.DN_
CERTCARC.AS_
CERTCKPN.AS_
CERTDFLT.AS_
CERTFNSH.AS_
CERTLYNX.AS_
CERTMAP.OC_
CERTOBJ.DL_
CERTRMPN.AS_
CERTRQAD.AS_
CERTRQBI.AS_
CERTRQMA.AS_
CERTRQUS.AS_
CERTRQXT.AS_
CERTRSDN.AS_
CERTRSER.AS_
CERTRSIS.AS_
CERTRSOB.AS_
CERTRSPN.AS_
CERTSCES.AS_
CERTWIZ.OC_
CIADMIN.HT_
CIQUERY.HT_
CIS.HT_
CITRPUN.HT_
CLEARDAY.HT_
CMAKREAD.HT_
CNFGPRTS.OC_
CNNCTERR.HT_
COADMIN.DL_
CONTROT.DL_
CONVLOG.EX_
DATASPEC.XM_
DAVCDATA.EX_
DAVCPROX.DL_
DDROP.DL_
DESKMOVR.HT_
DFRGIFPS.DL_
DIALTONE.HT_
DIGIISDN.IN_
DNS.EX_
DNSMGMT.MS_
DNSMGR.DL_
DNSPERF.DL_
DNSPERF.H_
DNSPERF.IN_
DNSPROV.DL_
DNSPROV.MO_
DTIWAIT.HT_
DTSGNUP.HT_
EPSNMFP.IN_
EXSTRACE.DL_
FCACHDLL.DL_
FIESTA.HT_
FP5.CA_
FP50EXT.CAB
FP50EXT.DL_
FP50EXT.IN_
FP5AMSFT.DL_
FP5AUTL.DL_
FP5AWEL.DL_
FPADMDLL.DL_
FPAGLOSS.HT_
FPEXT.MS_
FPMMC.DL_
FTPCTRS.H2_
FTPCTRS.IN_
FTPCTRS2.DL_
FTPMIB.DL_
FTPSVC2.DL_
GENSET.HT_
GLACIER.HT_
GZIP.DL_
HILGBBS.HT_
HNDSHAKE.HT_
HTTP.MI_
HTTP.SY_
HTTPAPI.DL_
HTTPEXT.DL_
HTTPMIB.DL_
HTTPODBC.DL_
IASPERF.DL_
IASPERF.H_
IASPERF.IN_
IASPOLCY.DL_
IEWEBHLP.CH_
IIS.DL_
IIS.IN_
IIS.MS_
IIS6.CAB
IISADMIN.DL_
IISADMIN.MF_
IISADMIN.MO_
IISAPP.VB_
IISBACK.VB_
IISCFG.DL_
IISCLEX4.DL_
IISCNFG.VB_
IISDG.CH_
IISEXT.DL_
IISEXT.VB_
IIS
IISFTPDR.VB_
IISLOG.DL_
IISMAP.DL_
IISMUI.DL_
IISNTS.CH_
IISPWCHG.DL_
IISRES.DL_
IISRESET.EX_
IISRG.CH_
IISRSTAP.DL_
IISRSTAS.EX_
IISRTL.DL_
IISSCHLP.WS_
IISSMMC.CH_
IISSUBA.DL_
IISUI.DL_
IISUIOBJ.DL_
IISUTIL.DL_
IISVDIR.VB_
IISW3ADM.DL_
IISWEB.VB_
IISWMI.DL_
IISWMI.MF_
IISWMI.MO_
IMS.CAB
INETINFO.EX_
INETMGR.DL_
INETMGR.EX_
INFOADMN.DL_
INFOCOMM.DL_
INFOCTRS.DL_
INFOCTRS.H2_
INFOCTRS.IN_
INS.CAB
IPP_0001.AS_
IPP_0002.AS_
IPP_0003.AS_
IPP_0004.AS_
IPP_0005.AS_
IPP_0006.AS_
IPP_0007.AS_
IPP_0010.AS_
IPP_0013.AS_
IPP_0014.AS_
IPP_0015.AS_
ISAPIPS.DL_
ISATQ.DL_
ISCOMLOG.DL_
ISMSMTP.DL_
ISP2BUSY.HT_
IVY.HT_
IXQLANG.HT_
LEAVES.HT_
LOGSCRPT.DL_
LOGTEMP.SQ_
LOGUI.OC_
LONSINT.DL_
MAILMSG.DL_
MAIZE.HT_
MCI.HT_
MDACRDME.HT_
METADATA.DL_
MSBBS.HT_
MSCTFP.DL_
MSIE
MSOBSHEL.HT_
MSOBWEB.DL_
msrdp.cab
MSTSWEB.CA_
MSVFW32.DL_
MSW3PRT.DL_
MSWEBDVD.DL_
NATURE.HT_
NETBLITZ.HT_
NETMEET.HT_
NETSK_FP.IN_
NEXTLINK.DL_
NNTPADM.DL_
NNTPAPI.DL_
NNTPFS.DL_
NNTPSNAP.CN_
NNTPSNAP.DL_
NNTPSNAP.HL_
NNTPSVC.DL_
NOANSWER.HT_
NT5IIS.CA_
NTFSDRV.DL_
OWSADM.EX_
P3CMINC.AS_
P3DM.AS_
P3DMDEL.AS_
P3DMLOCK.AS_
P3DMNEW.AS_
P3MB.AS_
P3MBDEL.AS_
P3MBGOTO.AS_
P3MBLOCK.AS_
P3MBNEW.AS_
P3MSPROP.AS_
PAGE1.AS_
PBERR.HT_
PERFPROC.DL_
PIECHTS.HT_
PLACE.DN_
POP3.HL_
POP3AUTH.DL_
POP3CON.CH_
POP3EVT.DL_
POP3MSG.DL_
POP3OC.DL_
POP3OC.IN_
POP3PERF.DL_
POP3PERF.IN_
POP3PI.H_
POP3SNAP.CH_
POP3SNAP.DL_
POP3SVC.EX_
PRTWEBVW.CS_
PULSE.HT_
QUOTES._
RASPHONE.EX_
RASPPP.DL_
RASPPPOE.SY_
RASPPTP.SY_
RASPTI.SY_
RCNTERR.HT_
RDTONE.HT_
rgroup.vbs
RHNDSHK.HT_
RNOANSW.HT_
RNOMDM.HT_
RPBERR.HT_
RPCPROXY.DL_
RPCREF.DL_
RPULSE.HT_
RRASPRXY.DL_
RTOOBUSY.HT_
RUNW32.BAT
RWNH.DL_
SAADMWEB.DL_
SAFEMODE.HT_
SAHTM001.HT_
SAHTM002.HT_
SAHTM003.HT_
SAHTM004.HT_
SAHTM005.HT_
SAHTM006.HT_
SAHTM007.HT_
SAHTM008.HT_
SAHTM009.HT_
SAHTM010.HT_
SAHTM011.HT_
SAHTM012.HT_
SAHTM013.HT_
SAHTM014.HT_
SAHTM015.HT_
SAHTM016.HT_
SAHTM017.HT_
SAHTM018.HT_
SAHTM019.HT_
SAHTM020.HT_
SAHTM021.HT_
SAHTM022.HT_
SAHTM023.HT_
SAHTM024.HT_
SAHTM025.HT_
SAHTM026.HT_
SAHTM027.HT_
SAHTM028.HT_
SAHTM029.HT_
SAHTM030.HT_
SAHTM031.HT_
SAHTM032.HT_
SAHTM033.HT_
SAHTM034.HT_
SAHTM035.HT_
SAHTM036.HT_
SAHTM037.HT_
SAHTM038.HT_
SAHTM039.HT_
SAHTM040.HT_
SAHTM041.HT_
SAHTM042.HT_
SAHTM043.HT_
SAHTM044.HT_
SAHTM045.HT_
SAHTM046.HT_
SAHTM047.HT_
SAHTM048.HT_
SAHTM049.HT_
SAHTM050.HT_
SAHTM051.HT_
SAHTM052.HT_
SAHTM053.HT_
SAHTM054.HT_
SAHTM055.HT_
SAHTM056.HT_
SAHTM057.HT_
SAHTM058.HT_
SAHTM059.HT_
SAHTM060.HT_
SAHTM061.HT_
SAHTM062.HT_
SAHTM063.HT_
SAHTM064.HT_
SAHTM065.HT_
SAHTM066.HT_
SAHTM067.HT_
SAHTM068.HT_
SAHTM069.HT_
SAHTM070.HT_
SAHTM071.HT_
SAHTM072.HT_
SAHTM073.HT_
SAHTM074.HT_
SAHTM075.HT_
SAHTM076.HT_
SAHTM077.HT_
SAHTM078.HT_
SAHTM079.HT_
SAHTM080.HT_
SAHTM081.HT_
SAHTM082.HT_
SAHTM083.HT_
SAHTM084.HT_
SAHTM085.HT_
SAHTM086.HT_
SAHTM087.HT_
SAHTM088.HT_
SAHTM089.HT_
SAHTM090.HT_
SAHTM091.HT_
SAHTM092.HT_
SAHTM093.HT_
SAHTM094.HT_
SAHTM095.HT_
SAHTM096.HT_
SAHTM097.HT_
SAHTM098.HT_
SAHTM099.HT_
SAHTM100.HT_
SAHTM101.HT_
SAHTM102.HT_
SAHTM103.HT_
SAHTM104.HT_
SAHTM105.HT_
SAHTM106.HT_
SAHTM107.HT_
SAHTM108.HT_
SAHTM109.HT_
SAHTM110.HT_
SAHTM111.HT_
SAHTM112.HT_
SAHTM113.HT_
SAHTM114.HT_
SAHTM115.HT_
SAHTM116.HT_
SAHTM117.HT_
SAHTM118.HT_
SAHTM119.HT_
SAHTM120.HT_
SAHTM121.HT_
SAHTM122.HT_
SAHTM123.HT_
SAHTM124.HT_
SAHTM125.HT_
SAHTM126.HT_
SAHTM127.HT_
SAHTM128.HT_
SAHTM129.HT_
SAHTM130.HT_
SAHTM131.HT_
SAHTM132.HT_
SASETUP.CA_
SECRCW32.MF_
SECRCW32.MO_
SEO.DL_
SERVHOME.HT_
SHTML.DL_
SIMPTCP.DL_
SMTPADM.DL_
SMTPAPI.DL_
SMTPCONS.DL_
SMTPCONS.MF_
SMTPCONS.MO_
SMTPSNAP.CNt
SMTPSNAP.CN_
SMTPSNAP.DL_
smtpsnap.hlp
SMTPSNAP.HL_
SMTPSVC.DL_
SNIFFPOL.DL_
SOFTPUB.DL_
SRCHERR.HT_
SSINC.DL_
STAXMEM.DL_
SUNFLOWR.HT_
SVCEXT.DL_
SWEETS.HT_
TECH.HT_
T
TFTPD.EX_
TIP.HT_
TOOBUSY.HT_
TSCMSI02.W3_
TSCMSI03.W3_
TSWEB1.HT_
UDDIWEB.MSI
UDDIWEB.MSP
UIHELPER.DL_
URLAUTH.DL_
VFPODBC.DL_
W32TIME.DL_
W32TM.EX_
W32TOPL.DL_
W3CACHE.DL_
W3COMLOG.DL_
W3CORE.DL_
W3CORE.MF_
W3CORE.MO_
W3CTRLPS.DL_
W3CTRS.DL_
W3CTRS.H2_
W3CTRS.IN_
W3DT.DL_
W3DT.MF_
W3DT.MO_
W3EXT.DL_
W3ISAPI.DL_
W3ISAPI.MF_
W3ISAPI.MO_
W3SSL.DL_
W3TP.DL_
W3WP.EX_
WAM.DL_
WAMPS.DL_
WAMREG.DL_
wamregps.dll
WAMREGPS.DL_
WEBCHECK.DL_
WEBCLNT.DL_
WEBDINGS.TT_
WEBHITS.DL_
WEBHOME.GI_
WEBPUBS.CH_
WEBVW.DL_
WFP0.IN_
WFP1.IN_
WFP2.IN_
WFP3.IN_
WFP4.IN_
WFP5.IN_
WFP6.IN_
WFP7.IN_
WHTTPSVC.MA_
WIN2000L.GI_
WIN2000R.GI_
WINPOP.EX_
WINS.EX_
WINSCTRS.DL_
WINSEVNT.DL_
WINSMGMT.MS_
WINSMIB.DL_
WINSSNAP.DL_
WOW32.DL_
WSGCGENS.HT_
WSGGLOSS.HT_
WSGINDEX.HT_
WSGPAUTH.HT_
WSGPCNFG.HT_
WSGPPERF.HT_
WSGPSCRP.HT_
WSGPSEC.HT_
WSGPSET.HT_
WSGPSMTP.HT_
WUWEB.DL_
XPBLKPOP.WA_
ZITAN.BY_
_POP3_00.HT_
_POP3_01.HT_
_POP3_10.HT_
_POP3_11.HT_
_POP3_12.HT_
_POP3_13.HT_
_POP3_14.HT_
_POP3_15.HT_
_POP3_20.HT_
_POP3_21.HT_
_POP3_22.HT_
_POP3_23.HT_
_POP3_24.HT_
_POP3_30.HT_
_POP3_31.HT_
_POP3_32.HT_
_POP3_33.HT_
_POP3_34.HT_
_POP3_C1.HT_
_POP3_C2.HT_
_POP3_C3.HT_
_POP3_C4.HT_
_POP3_C5.HT_
_POP3_C6.HT_
100分求一个用VB.net做的简单网页的代码,谢谢?。。?/h2>用vb.net做的校友录……(附所有源代码)
来源:不详 作者 佚名 点击数:31 录入时间:07-12-17 15:21:39
想必大家都上过校友录吧,里面的功能虽然不是很强大,但是为我们这些毕业之后各奔西东的学子来说,到真是提供了一个好的聚集点 , 下面是我用vb.net做的校友录,当然也不能说是校友录了,只能说是我们班的学友录了:)不过只要你掌握了这种编程思想 , 校友录就不在话下了 。这里我将重点谈一下关于管理员权限赋予 。
以前有这个想法的时候,难就难在管理员身份的赋予上,开始想如果一般用户在被提升为管理员之后,我可以把他的信息转到另外一个表中,以后登陆的时候先检查manage表中是否有他就行了,这种办法我已经实现了,是不是有些笨……可是正在我要正式开工的时候,一个想法突然冒了出来,是什么呢?呵呵 , 就是在数据库中再增加一个字段了如果是第一次注册就让这个字段item(int)的值为0,要是被提升之后就update为1 , 班级创始人呢?当然了,在他申请时付给他一个班级id,然后先判断班级id为这个已经注册的人信息条数是否为0,如果是,那么就付给他item=2好了 。下面的代码中,我没有实现这个功能 , 因为我做的是班友录的,当然了,我就是管理员喽:)
在这里,我使用的是checkboxlist(两个) , 一个用来转换数据(visibe=fause),一个用来显示数据 , 还有一个checkbox用来写全部选中的事件 。当然了还有两个按钮事件,一个是用来提升为管理员的 , 一个是用来降级为一般用户的,这两个按钮在判断为一般用户时
enable都是为fause的,只有当判断登录为管理员时才为true 。当然了,如果你是班级创始人 , 是不可能被降级的:)
这里用来显示信息的我用的是一个datagrid,当判断为非管理员时,删除栏的visible将为fause,为管理员的时候,才为true,也就是说只有管理员才可以删除信息 。而不是注册的用户是不能发言的所有的按钮控件的enable将都为fause 。
代码如下:board.aspx
%@ Page Language="vb" AutoEventWireup="false" Codebehind="boaman.aspx.vb" Inherits="_99re1.boaman"%
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
HTML
HEAD
title/title
meta content="Microsoft Visual Studio.NET 7.0" name="GENERATOR"
meta content="Visual Basic 7.0" name="CODE_LANGUAGE"
meta content="javascript" name="vs_defaultClientScript"
meta content="" name="vs_targetSchema"
/HEAD
body background="image/bg.gif" MS_POSITIONING="GridLayout"
form id="Form1" method="post" runat="server"
asp:checkbox id="yourcheck" style="Z-INDEX: 101; LEFT: 84px; POSITION: absolute; TOP: 71px" runat="server" Text="全部选中" AutoPostBack="True" ForeColor="SaddleBrown" Font-Bold="True"/asp:checkbox
asp:button id="Button1" style="Z-INDEX: 102; LEFT: 34px; POSITION: absolute; TOP: 43px" runat="server" Text="提升为管理员" Height="20px" Width="100px" BackColor="Gainsboro" BorderColor="Lavender" BorderWidth="2px" BorderStyle="Outset"/asp:button
asp:button id="Button2" style="Z-INDEX: 103; LEFT: 142px; POSITION: absolute; TOP: 43px" runat="server" Text="降级为一般用户" Height="20px" Width="100px" BackColor="Gainsboro" BorderColor="Lavender" BorderWidth="2px" BorderStyle="Outset"/asp:button
asp:checkboxlist id="CheckBoxList1" style="Z-INDEX: 104; LEFT: 14px; POSITION: absolute; TOP: 10px" runat="server" Visible="False"/asp:checkboxlist
asp:checkboxlist id="mycheck" style="Z-INDEX: 105; LEFT: 98px; POSITION: absolute; TOP: 99px" runat="server" ForeColor="Navy" Font-Size="X-Small"/asp:checkboxlist
asp:label id="Label1" style="Z-INDEX: 106; LEFT: 82px; POSITION: absolute; TOP: 14px" runat="server" ForeColor="Red" Font-Names="方正姚体"(已注册用户)/asp:label
asp:image id="Image1" style="Z-INDEX: 107; LEFT: 260px; POSITION: absolute; TOP: 180px" runat="server" Height="124px" Width="221px" ImageUrl="image/99re1-1.gif"/asp:image
asp:datagrid id="DataGrid1" style="Z-INDEX: 108; LEFT: 250px; POSITION: absolute; TOP: 83px" runat="server" Height="113px" Width="461px" BorderColor="#ffcc66" AutoGenerateColumns="False" HeaderStyle-Font-Size="9" HeaderStyle-HorizontalAlign="Center" HeaderStyle-ForeColor="red" HeaderStyle-Font-Bold="True"
Columns
asp:HyperLinkColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Height="24" ItemStyle-Font-Size="9" DataNavigateUrlField="stu_id" DataNavigateUrlFormatString="querry.aspx?stu_id={0}" DataTextField="stu_id" HeaderText="学号"/asp:HyperLinkColumn
asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="100" ItemStyle-Font-Size="9" DataField="tel" HeaderText="电话"/asp:BoundColumn
asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="80" ItemStyle-Font-Size="9" DataField="oicq" HeaderText="OICQ"/asp:BoundColumn
asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="140" ItemStyle-Font-Size="9" DataField="email" HeaderText="E-mail"/asp:BoundColumn
asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="60" ItemStyle-Font-Size="9" DataField="point" HeaderText="登录次数"/asp:BoundColumn
/Columns
/asp:datagrid
/form
/body
/HTML
下面是codebehind中的内容:boaman.asp.vb
Imports System.Data
Imports System.Data.SqlClient
Public Class boaman
Inherits System.Web.UI.Page
Protected WithEvents yourcheck As System.Web.UI.WebControls.CheckBox
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Protected WithEvents CheckBoxList1 As System.Web.UI.WebControls.CheckBoxList
Protected WithEvents mycheck As System.Web.UI.WebControls.CheckBoxList
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Protected WithEvents Image1 As System.Web.UI.WebControls.Image
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
Protected WithEvents Button2 As System.Web.UI.WebControls.Button
#Region " Web Form Designer Generated Code "
'This call is required by the Web Form Designer.
System.Diagnostics.DebuggerStepThrough() Private Sub InitializeComponent()
End Sub
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub
#End Region
Dim conn As SqlConnection = New SqlConnection("server=lixinri;uid=sa;pwd=;database=99re1")
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'////////////////////判断是否为过客
If Session("stu_id") = "" Then
Button1.Enabled = False : Button2.Enabled = False
'////////////////////调用check()事件
check()
Else
If Not IsPostBack Then
Dim sql As String = "select * from pwd where stu_id=@stu_id"
Dim comm As SqlCommand = New SqlCommand(sql, conn)
comm.Parameters.Add(New SqlParameter("@stu_id", SqlDbType.Int, 4))
comm.Parameters("@stu_id").Value = https://www.04ip.com/post/Session("stu_id")
Dim dr As SqlDataReader
conn.Open()
dr = comm.ExecuteReader
While dr.Read
If dr.Item("term") = "0" Then
'///////////////////判断是否为一般用户
dr.Close()
Button1.Enabled = False : Button2.Enabled = False
Dim sql_1 As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
Dim cmd As New SqlCommand(sql_1, conn)
dr = cmd.ExecuteReader
While dr.Read
If dr.Item("term") = "1" Then
mycheck.Items.Add("u"dr.Item("name")"/u""font color=darkorange(管理员)/font")
ElseIf dr.Item("term") = "2" Then
mycheck.Items.Add("u"dr.Item("name")"/u""font color=red(班级创始人)font")
Else
mycheck.Items.Add("u"dr.Item("name")"/u")
End If
CheckBoxList1.Items.Add(dr.Item("stu_id"))
End While
Else
'////////////////////判断是否为管理员
dr.Close()
Button1.Enabled = True : Button2.Enabled = True
Dim sql_1 As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
Dim cmd As New SqlCommand(sql_1, conn)
dr = cmd.ExecuteReader
While dr.Read
If dr.Item("term") = "1" Then
mycheck.Items.Add("u"dr.Item("name")"/u""font color=darkorange(管理员)/font")
ElseIf dr.Item("term") = "2" Then
mycheck.Items.Add("u"dr.Item("name")"/u""font color=red(班级创始人)font")
Else
mycheck.Items.Add("u"dr.Item("name")"/u")
End If
CheckBoxList1.Items.Add(dr.Item("stu_id"))
End While
End If
End While
dr.Close()
'////////////////////////取出数据,填充dataset
Dim mysql As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
comm = New SqlCommand(mysql, conn)
Dim mycomm As SqlDataAdapter = New SqlDataAdapter(mysql, conn)
Dim ds As DataSet = New DataSet()
mycomm.Fill(ds, "base")
DataGrid1.DataSource = ds.Tables("base").DefaultView
DataGrid1.DataBind()
End If
End If
End Sub
'///////////////////////书写check()事件
Sub check()
If Not IsPostBack Then
Dim mysql As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
Dim comm As New SqlCommand(mysql, conn)
Dim dr As SqlDataReader
conn.Open()
dr = comm.ExecuteReader
While dr.Read
If dr.Item("term") = "1" Then
mycheck.Items.Add("u"dr.Item("name")"/u""font color=darkorange(管理员)/font")
ElseIf dr.Item("term") = "2" Then
mycheck.Items.Add("u"dr.Item("name")"/u""font color=red(班级创始人)font")
Else
mycheck.Items.Add("u"dr.Item("name")"/u")
End If
CheckBoxList1.Items.Add(dr.Item("stu_id"))
End While
dr.Close()
Dim mycomm As SqlDataAdapter = New SqlDataAdapter(mysql, conn)
Dim ds As DataSet = New DataSet()
mycomm.Fill(ds, "base")
DataGrid1.DataSource = ds.Tables("base").DefaultView
DataGrid1.DataBind()
End If
End Sub
'/////////////////////填充yourcheck
Private Sub yourcheck_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles yourcheck.CheckedChanged
Dim i As Integer
For i = 0 To mycheck.Items.Count - 1
If yourcheck.Checked Then
mycheck.Items(i).Selected = True
Else
mycheck.Items(i).Selected = False
End If
Next
End Sub
'///////////////////////提升一般用户为管理员
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
conn.Open()
Dim i As Integer
For i = 0 To mycheck.Items.Count - 1
If mycheck.Items(i).Selected Then
Dim sql_1 As String = "update pwd set term=1 where stu_id=@stu_id and term=0"
Dim comm As SqlCommand = New SqlCommand(sql_1, conn)
comm.Parameters.Add(New SqlParameter("@stu_id", SqlDbType.Int, 4))
comm.Parameters("@stu_id").Value = https://www.04ip.com/post/CheckBoxList1.Items(i).Text
comm.ExecuteNonQuery()
End If
Next
Response.Redirect("boaman.aspx")
End Sub
'///////////////////////降级管理员为一般用户
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
conn.Open()
Dim i As Integer
For i = 0 To mycheck.Items.Count - 1
If mycheck.Items(i).Selected Then
Dim sql_1 As String = "update pwd set term=0 where stu_id=@stu_id and term=1"
Dim comm As SqlCommand = New SqlCommand(sql_1, conn)
comm.Parameters.Add(New SqlParameter("@stu_id", SqlDbType.Int, 4))
comm.Parameters("@stu_id").Value = https://www.04ip.com/post/CheckBoxList1.Items(i).Text
comm.ExecuteNonQuery()
End If
Next
Response.Redirect("boaman.aspx")
End Sub
End Class
当然了 , 这里面还有好多不足的地方,恳求高手批评指正 。
校友录还有一些其它的功能就很简单了,这里就不再探讨了 。
文件的扩展名GIF是Graphics Interchange Format的缩写,即为图形交换格式,以这种格式存在的文件扩展名为.gif
JPEG 一种图像格式,支持高程度的压缩
BMP是bitmap的缩写,即为位图图片 。位图图片是用一种称作“像素”的单位存贮图像信息的 。这些“像素”其实就是一些整齐排列的彩色(或黑白)点 , 如果这些点被慢慢放大 , 您就会看到一个个的“像素”中添充着自己的颜色,这些“像素”整齐地排列起来,就成为了一幅BMP图片,并以.bmp(.rle,.dib等)为扩展名 。
文件后缀名大全(新手必看)
什么是文件名后缀 说起来Windows工作界面下的文件名简直是随心所欲,比如:某编辑部的2000年工作计划 。文件名即可用中文直接表达,而且长度最长可达256个字符,让人看起来真是一目了然 。然而在Windows环境中 , 安装的软件中却大量存在着类似CALENDAR.EXE、GAMES.GRP等等的文件名 , 这又是为什么呢?原来这些文件名都是根据DOS环境的文件名命名规则而定的 。DOS环境下的文件名 在DOS下 , 文件名采用8+3结构 , 即:最长8位的文件名 , 由小数点分隔后再跟上最长3位的后缀名 , 如:READ.ME、SETUP.EXE,一般情况下文件名不允许使用汉字,只能由字母、数字和一些符号组成 。如READ.ME用中文理解就是“读我”,即提示用户在使用软件前先看看这个文件的内容,以获取更多的提示信息 。而更重要的是,DOS下规定用后缀名来区分各种不同的文件 。在DOS下最容易遇到的首先是可执行文件,后缀名有两类:*.exe、*.com(此处的*表示文件名任意) , 它们是由汇编语言或其它高级语言编出的程序经过编译后直接在DOS下运行的文件 。有时由于软件功能多、内存偏小 , 不能一次性全部调入内存还可能有同文件名的ovl文件,如ws.exe、ws.ovl 。另外还有一种文件可以直接运行 , *.bat,即批处理文件,其中有许多命令或可执行文件名,主要用于提高工作效率 , 其中最有用的是Autoexec.bat , 这个文件在开机时会被自动执行(自动执行在英文中就是Automatically execute) 。而另外一种可以加载但不能直接运行的文件即是系统扩展管理文件*.sys(sys即系统system),它主要提供某些非标准设备如鼠标、扩充内存等的驱动程序,如mouse.sys、himem.sys 。为了统一管理还专门规定了一个config.sys的文本文件来一次性地在开机时自动调入这些必需的设备驱动程序,这些文件一旦被误删或换名或被病毒侵袭则将直接导致系统工作不正常 。DOS下字处理产生的文件原本是可以不用后缀的,但人们常用*.txt表示(txt即文本text) 。被所有的平台和所有应用程序支持 。而为了管理方便,人们也可以用自己的名字做后缀来表示是自己建的文本文件 , 如我输入的很多文章即为*.mcj,为了便于用户在意外删掉原文件的情况下能尽快恢复原文件,许多字处理系统都提供了一种自动备份的功能,如我第二次编辑JIHUA.MCJ时(JIHUA:计划的汉语拼音),系统会先拷贝一份原文件为JIHUA.BAK 。使用具有特殊格式功能的字处理软件,如求伯君先生早年推出的WPS,就会规定其后缀为.wps,用以标识是用WPS生成的文本文件 。当使用字处理软件编辑高级语言程序时,后缀通常为相应语言的前三个字母(如:*.BAS即BASIC语言源程序,*.PAS为PASCAL语言程序,*.FOR为Fortran语言程序,*.C即为C语言,*.ASM即为汇编语言程序) 。伴随着可执行文件常附有以下几类文件:*.HLP即帮助文件(help)、*.CFG即配置文件(config)、*.DAT即数据文件(data)、*.LOG即日志文件(log)、*.TMP为临时文件(temporal) 。
二 图像文件: bmp Windows or OS/2 Bitmap clp Windows Clipboard cup Dr. Halo dib Windows or OS/2 DIB emf Windows Enhanced meta file eps Encapsulated Postscript fpx Flash Pix gif Compuserver iff Amiga img GEM Paint jpg JPEG - JFIF Compliant lbm Deluxe Paint mac Mac Paint msp Macrosoft Paint pbm Potable Bitmap pct Macintosh Pict pcx Zsoft Paintbrush pic PC Paint png Portable Network Graphics ppm Portable Pixelmap psd Photoshop psp Paint Shop Pro Image ras Sun Raster Image raw Eaw File format rle Windows or CompuServer RLE sct SciTex Continuous Tone tga Truevision Targa tif Tagged Image file format wmf Windows meta File wpg WordPefect Bitmap 扩展名 文件类型 打开方式 .aiff 声音文件 Windows media Player .!!! Netants 暂存文件 Netants .ani 动画鼠标 .arj 压缩文件 ARJ .avi 电影文件 Windows media Player .awd 传真文档 .bak 备份文件 .bas Basic 语言 Basic .bat DOS批处理文件 .bin MAC 二进制码文件 Stuffit Expander .bmp 图象文件 画图/看图软件 .cab 压缩文件 Winzip .cdr Corel图画文件 Corel Draw .chk Scandisk检察后制作的文件 可以删掉 .com DOS命令文件 自执行 .cpx Cryptapix加密图片文件 Cryptapix .cur 静态鼠标 .dbf 数据库文件 dBase, FoxBase, Access .dll 应用程序扩展 .doc 文档文件 Word .dwg AutoCAD文件 AutoCAD .eps Illustrator 图画文件 Adobe Illustrator .exe 执行文件 自执行 .fon 字体文件 .gb 国标码文件 南极星文字处理 .get Getright 暂存文件 .gif 256色图象文件 画图/看图软件 .gz 可供UNIX或LINUX使用的压缩文件 Winzip .hqx Macintosh 文件 Stuffit Expander .htm 网页 浏览器 .html 网页 浏览器 .ico 图标 .ini 配置设置 笔记本或WordPad .ipx IPX演示文件 浏览器加装IPX 插件 .jiff 图象文件 画图/看图软件 .jpeg 压缩过的图象文件 画图/看图软件 .jpg 压缩过的图象文件 画图/看图软件 .js javascript .lnk 快捷方式连接文件 连接文件的相应程序 .m3u Winamp播放列表 Winamp .mid 声音文件 Windows media Player .mov Quicktime影像文件 Quick Time .mp3 压缩音乐文件 Winamp .mpeg 影像 Windows media Player .mpg 影像 Windows media Player .njx 南极星文档 南极星文字处理 .pcb 电子电路图设计文件 Protel PCB .pdf 便携式文档格式,内含图片文字等等 Adobe Acrobat, Adobe Acrobat Reader .pm5 PageMaker 5 排版文件 Page Maker .ppt Power Point 文件 Microsoft Power Point .ps Ghostscript .psd Photoshop文件 Adobe Photoshop .pub Publisher排版文件 Microsoft Publisher .qt Quicktime影像文件 Quick Time .ra Real Audio声音文件 Real Audio .ram Real Audio影像文件 Real Audio .rar 压缩文件 Winrar .rsf Richwin 字体文件 .sch 电子原理图设计文件 Protel Schematic .scr 屏保文件 .sea Macintosh 启动文件 .sit 压缩 Stuffit Expander .swf Flash动画文件 浏览器加装Macromedia flash 插件 .sys 系统文件 .tar UNIX压缩文件 Winzip .tif 高质量图象文件 画图/看图软件 .tiff 高质量图象文件 画图/看图软件 .tmp 暂存文件 可以删掉 .ttf 字体文件 .txt 纯文本文件 笔记本或全部文字处理系统 .vbs Visual Basic 编程文件 Microsoft Viasual Basic .viv VIVO影像文件 浏览器加装VIVO 插件 .vqf 压缩声音文件 Yamaha SoundVQ Player .wav 未压缩的声音文件 Windows media Player .wk1 Lotus 123 试算软件文件 Lotus 123, Excel .wq1 Q-Pro 试算软件文件 Q-Pro, Excel .wri Write文字文档 Word .xls Excel 试算软件文件 Microsoft Excel .Z UNIX压缩文件 Winzip .zip 压缩文件 Winzip C1iIvbe
数据库类文件的后缀名 onfcFJ18E4 uYLYBiJVuyK 在Dbase、FoxBase、Foxpro系列软件的环境下有以下几类后缀: onfcFJ18E4.dbf 数据库文件(databasefile) .prg 命令文件(即程序Program) onfcFJ18E4.fxp 编译后的程序 .scx和.sct 屏幕文件 onfcFJ18E4.fpt 备注字段文件 .frx和.frt 报表文件 onfcFJ18E4.cbx和.pjt 标签文件 .mnx 和.mnt 菜单文件 onfcFJ18E4.pjx和.pjt 工程文件 .app 应用文件 onfcFJ18E4.cdx和.idx 索引文件 .qpr和.qpx SQL查询文件 onfcFJ18E4.fp 配置文件 .ap 生成应用 onfcFJ18E4.err 编译错误文件 .men 内存应用 onfcFJ18E4.fky 键宏文件 .win 窗口文件 onfcFJ18E4.pcb 库文件 .tmp 临时文件 onfcFJ18E4.tbk 临时数据库文件 uYLYBiJVuyK动画文件的后缀名 NufVBITae dy48s2nVEj 动画文件格式用于保存包含动画框架中的图形信息 。主要有:Autodesk FLIC(.FLC):即.FLI,Autodesk Animator和AnimatorPro的动画文件格式 。支持256色,最大的图像像素是64000×64000,支持压缩 。广泛用于动画图形中的动画序列、计算机辅助设计和计算机游戏应用程序 。不大适合制作真实世界图像动画 。NufVBITae MacPICTS(.PCS , .PIC):Macromedia开发的动画文件格式,为Macintosh应用程序使用 。支持256色,支持压缩,用于保存动画数据,是Quick Time的前身 。NufVBITae Microsoft资源互换文件格式,TIFF(.AVD):Microsoft公司开发的动画文件格式,被Windows、Windows NT平台和OS/2多媒体应用程序所支持 , 支持256色和压缩 , 用于在多媒体应用程序中保存音频、视频和图形信息 。NufVBITae MPEG(.MPEG):国际标准化组织的运动图像专家小组开发的动画文件格式 。被所有平台和Xing Technologies MPEG播放器及其它应用程序所支持 , 支持压缩,最大图像像素是4095×4094×30帧/每秒 。用于编码音频、视频、文本和图形数据 。NufVBITae Quick Time(.QTM):Apple计算机公司开发的动画文件格式 。被Apple Macintosh和Microsoft Windows平台所支持,支持25位颜色 , 最大图像像素是64000×64000,支持压缩,用于保存音频和运动视频信息 。dy48s2nVEj声音文件的后缀名 NufVBITae dy48s2nVEj 声音文件格式是用于保存数字音频信息的 。它们主要有: NufVBITae AIFF(.AIF):这是Apple计算机公司开发的声音文件格式 , 被Macintosh平台和应用程序所支持 。支持压缩 。NufVBITae Amiga声音(.SVX):Commodore所开发的声音文件格式 , 被Amiga平台和应用程序所支持,不支持压缩 。NufVBITae MAC声音(.SND):Apple计算机公司开发的声音文件格式,被Macintosh平台和多种Macintosh应用程序所支持,支持某些压缩 。NufVBITae MIDI(.MID):国际MIDI协会开发的声音文件格式 , 被Windows平台和许多应用程序所支持,用于为乐器创建数字声音 。NufVBITae 声霸(.VOC):Creative Labs公司开发的声音文件格式,被Windows和DOS平台所支持,支持压缩 。NufVBITae WAVE(.WAV):微软公司用作Windows平台上保存音频信息的资源格式 。dy48s2nVEj Windows环境下的文件名 EpV7vGl1 2RJmsx 绝大多数DOS文件名后缀在Windows下继续有效,但Windows本身也引出了许多种崭新的后缀名,如:*.drv为设备驱动程序(Driver)、*.fon和*.fot都是字库文件、*.grp为分组文件(Group)、*.ini为初始化信息文件 (Initiation)、*.pif为DOS环境下的可执行文件在Windows下执行时所需要的文件格式、*.crd即卡片文件(Card)、*.rec即记录器宏文件(Record)、*.wri即文本文件(Write) , 它是字处理write.exe生成的文件、*.doc和*.rtf也是文本文件(Document),它们是Word产生的文件、*.cal为日历文件、*.clp是剪贴板中的文件格式、*.htm和 *.html即主页文件、*.par为交换文件、*.pwl为口令文件(Password)等等 。EpV7vGl1 图像文件名后缀进入多媒体世界后,大家会看到各种各样精彩的图片,会发现许多种后缀名 。的确,由于各个公司在开发图形有关的软件时都自制标准,导致今日在图形方面有太多的格式,以下就是常见的几种格式: EpV7vGl1 首先是一种位图文件格式,它是一组点(像素)组成的图像,它们由图像程序生成或在扫描图像时创建 。主要有Windows位图(.BMP):由Microsoft公司开发,它被Windows和Windows NT平台及许多应用程序支持 。支持32位颜色,用于为Windows界面创建图标的资源文件格式 , 光标(.CUR、.DLL、.EXE):资源文件格式,用于创建Windows界面的光标 。OS/2位图(.BMP):Microsoft公司和IBM开发的位图文件格式 。它为各种操作系统和应用程序所支持 。支持压缩,最大的图像像素为64000×64000 。画笔(.PCX):由Zsoft公司推出,它对图像数据也进行了压缩,可由PCX生成 。用于Windows的画笔 。支持24位颜色,最大图像像素是64000×64000 。支持压缩 。图形交换格式(.GIF): ( Graphics Interchage format):由Compu Serve创建 , 它能以任意大小支持图画 , 通过压缩可节省存储空间,还能将多幅图画存在一个文件中 。支持256色,最大图像像素是64000×64000 。EpV7vGl1 Kodak Photo CD(.PCD):Eastman Kodak所开发的位图文件格式,被所有的平台所支持,PCD支持24位颜色,最大的图像像素是2048×3072,用于在CD-ROM上保存照片 。EpV7vGl1 Adobe Photoshop(.PSD):Adobe Photoshop的位图文件格式,被Macintosh和MS Windows平台所支持,最大的图像像素是30000×30000,支持压缩,广泛用于商业艺术 。EpV7vGl1Macintosh绘画(.MAC):Apple公司所开发的位图文件格式 。被Macintosh平台所支持 , 仅支持单色原图,最大图像像素是576×720 。支持压缩,主要用于在Macintosh图形应用程序中保存黑白图形和剪贴画片 。
压缩文件的后缀名 gFLB0TK HA0ZG 为了提高存储效率,许多公司都推出了压缩数据的方法和相应的软件,这类文件的使用主要通过压包和解包软件来进行,主要的后缀有:?arj、*.rar、*.lzh、*.jar 。还有一些专用的压缩文件,如:*.ex_、*.dl_、*.d3_、*.cab等 。
【关于pcommvb.net的信息】pcommvb.net的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于、pcommvb.net的信息别忘了在本站进行查找喔 。

    推荐阅读