??xml version="1.0" encoding="utf-8" standalone="yes"?>中文字幕精品无码久久久久久3D日动漫 ,久久人人超碰精品CAOPOREN ,国产亚洲精久久久久久无码http://www.shnenglu.com/beer/一个空白?/description>zh-cnSun, 11 May 2025 03:26:35 GMTSun, 11 May 2025 03:26:35 GMT60国家重点实验室名?/title><link>http://www.shnenglu.com/beer/archive/2007/04/24/22754.html</link><dc:creator>啤酒</dc:creator><author>啤酒</author><pubDate>Tue, 24 Apr 2007 11:04:00 GMT</pubDate><guid>http://www.shnenglu.com/beer/archive/2007/04/24/22754.html</guid><wfw:comment>http://www.shnenglu.com/beer/comments/22754.html</wfw:comment><comments>http://www.shnenglu.com/beer/archive/2007/04/24/22754.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/beer/comments/commentRss/22754.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/beer/services/trackbacks/22754.html</trackback:ping><description><![CDATA[<table width=600 bgColor=#ebeaf2 border=1> <tbody> <tr> <td bgColor=#685b8e> <p align=center><strong><font color=#ffffff size=4><br>国家重点实验室名?/font></strong></p> </td> </tr> <tr> <td><br><br><br> <center></center> <div align=center> <table cellSpacing=0 cellPadding=0 width=560 border=0> <tbody> <tr> <td>  <div align=center> <center> <table cellSpacing=0 cellPadding=0 width=500 border=1> <tbody> <tr> <td width=535 colSpan=2 height=25> <p align=center><strong>中国U学?/strong></p> </td> </tr> <tr> <td width=300 height=25> <p align=left>模式识别实验?/p> </td> <td width=233 height=25>自动化研I所</td> </tr> <tr> <td width=300 height=25>金属材料疲劳与断裂实验室</td> <td width=233 height=25>金属研究所</td> </tr> <tr> <td width=300 height=25><font color=#000000><font lang=ZH-CN>传感技术联合实验室</font>  </font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>电子所、冶金所、半g所{?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>导实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>物理所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>U外物理实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v技术物理研I所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>生物大分子实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>生物物理研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>大气数值模拟实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>大气物理研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>波谱与原子分子物理实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>武汉物理研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>分子反应动力学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>大连化学物理研究所、化学所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>腐蚀U学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>金属腐蚀与防护研I所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>U学与工E计实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>计算数学与科学工E计所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>信息功能材料实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v冉所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>植物l胞与染色体工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>遗传所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>黄土高原土壤侵蚀与旱地农业实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西北水土保持所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>农业虫害鼠害l合ȝ实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>动物所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>煤炭转化实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>p煤化所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>火灾U学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>中国U技大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>瞬态光学技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西安光机所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>生化工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>化冶所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>微生物资源前期开发实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>微生物所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>微细加工光学技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>光电技术所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>工程塑料实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>化学所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>半导体超晶格实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>半导体研I所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>快速凝固非q合金实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>金属研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>声场与声信息实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>声学研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>淡水生态与生物技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>水生生物研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>基合成和选择氧化实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>兰州化物所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>大气边界层物理和化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>大气所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>分子动态与Ex结构实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>化学研究所、北?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>催化基础实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>大连化学物理研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>高性能陶瓷和超微结构实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v酸盐研I所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>计划生育生殖生物学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>动物研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>表面物理实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>物理研究所、半g所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>植物分子遗传实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v植物生理研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>分子生物学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v生物化学研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>生命有机化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v有机化学研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>气体地球化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>兰州地质研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>有机地球化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>q州地球化学研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>资源与环境信息系l实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>地理研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>新药研究实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v药物研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>l构化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>徏物质l构研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>d工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>兰州冰川d研究所</font></td> </tr> <tr> <td width=535 colSpan=2 height=25> </td> </tr> <tr> <td width=535 colSpan=2 height=25> <p align=center><font lang=ZH-CN color=#000000><strong>教育?/strong></font></p> </td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>集成光电子学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华、吉大、半g研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>化学工程联合实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华、天大、华东理工大学、浙?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>煤的燃烧实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华中理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>毫米波实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>东南大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>应用表面物理实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>复旦大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>材料复合新技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>武汉工业大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>高分子材料工E实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>四川联合大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>晶体材料实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>׃大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>计算助设计与图行学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>江大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>配位化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>土木工程防灾实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>同济大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>Z微结构物理实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>Z表面物理化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>厦门大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>技术与pȝ实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>内生金属矿床成矿机制研究实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>暴雨监测和预实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>医药生物技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>污染控制和资源化研究实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>同济大学、南京大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>生物反应器实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华东化工学院</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>微生物技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>׃大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>生物防治实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>中山大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>沛_岸动力沉积和动力地貌综合实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华东师范大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>q旱农业生态实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>兰州大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>_末冉实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>中南工业大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>新型陶瓷与精l工艺实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>凝固技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西北工业大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>新金属材料实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京U技大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>硬材料实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>吉林大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>理论化学计算实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>吉林大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>吸咐分离功能高分子材料实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南开大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>染料、表面活性剂_化工合成实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>大连理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>重质油加工实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>xa大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>E土材料化学及应用实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>q代声学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>体传动及控制实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>江大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>制浆造纸工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华南理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>U维材料Ҏ实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>中国U织大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>混凝土材料研I实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>同济大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>软g开发环境实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京航空航天大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>C光学仪器实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>江大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>_֯试技术及仪器实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>天|大学、清华大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>文字信息处理技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>微L与数字通信技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>E控交换技术与通信|实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京邮电大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>Ud与多ҎU电通信pȝ实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>东南大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>区域光纤通信与相q光U通信实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京大学、上交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>l合业务|理论及兛_技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西安电子U技大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>专用集成电\与系l实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>复旦大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>宽带光纤传输与通信pȝ技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>Q成都)电子U技大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>电力pȝ及大型发电设备安全实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>牵引动力实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西南交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>C焊接生技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>哈尔滨工业大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>工业控制技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>江大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>汽R安全与节能实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>振动冲击噪声实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>电力讑֤甉|l缘实骏?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西安交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>工业装备l构分析实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>大连理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>塑性成形模拟及模具技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华中理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>轧制技术及q蝾自动化实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>东北大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>汽R动态摸拟实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>吉林工业大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>机械刉系l工E实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西安交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>爆炸灑֮预防、控制实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>生物膜与膜生物工E实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华、北大、动物所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>h工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>人工微结构和介观物理实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>遗传工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>复旦大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>视觉听觉信息处理实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>元素有机化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南开大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>应用有机化学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>兰州大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>岸和近工E实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>大连理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>蛋白质工E及植物基因工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>Ȁ光技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华中理工大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>煤的清洁燃烧技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>计算Y件新技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>南京大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>机械传动实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>重庆大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>动力工程多相实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西安交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>材料科学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>江大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>擦学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>清华大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>机械l构强度与振动实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西安交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>金属材料强度实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>西安交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>金属基复合材料实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v交通大?/font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>高速水力学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>成都U技大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>快速激光光谱实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>中山大学</font></td> </tr> <tr> <td width=535 colSpan=2 height=25> </td> </tr> <tr> <td width=535 colSpan=2 height=25> <p align=center><font lang=ZH-CN color=#000000><strong>农业?/strong></font></p> </td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>作物遗传改良实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华中农业大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>农业生物技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京农业大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>植物病虫害生物学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>中国农科院植保所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>兽医生物技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>农科院哈滨兽医所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>热带作物生物技术实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>华南热作两院</font></td> </tr> <tr> <td width=535 colSpan=2 height=25> </td> </tr> <tr> <td width=535 colSpan=2 height=25> <p align=center><font lang=ZH-CN color=#000000><strong>卫生?/strong></font></p> </td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>病毒基因工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>预防ȝ院病毒所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>天然药物及仿生药物实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>北京ȝ大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>d遗传学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>湖南ȝ大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>癌基因及相关基因实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v市肿瘤所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>分子肿瘤学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>ȝ院肿瘤所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>d经生物学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上vȝ大学</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>d分子生物学实验室</font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>ȝ院基所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>计划生育药具实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>上v计划生育研究所</font></td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>实验血液学实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>ȝ院血液所</font></td> </tr> <tr> <td width=535 colSpan=2 height=25> </td> </tr> <tr> <td width=535 colSpan=2 height=25> <p align=center><font lang=ZH-CN color=#000000><strong>国家绘局</strong></font></p> </td> </tr> <tr> <td width=300 height=25><font lang=ZH-CN color=#000000>绘遥感信息工程实验?/font></td> <td width=233 height=25><font lang=ZH-CN color=#000000>武汉绘U技大学</font></td> </tr> </tbody> </table> </center></div> </td> </tr> </tbody> </table> </div> </td> </tr> </tbody> </table> <img src ="http://www.shnenglu.com/beer/aggbug/22754.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/beer/" target="_blank">啤酒</a> 2007-04-24 19:04 <a href="http://www.shnenglu.com/beer/archive/2007/04/24/22754.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>2002-2004q国?0个一U学U高校排?4) http://www.shnenglu.com/beer/archive/2007/04/24/22752.html啤酒啤酒Tue, 24 Apr 2007 10:42:00 GMThttp://www.shnenglu.com/beer/archive/2007/04/24/22752.htmlhttp://www.shnenglu.com/beer/comments/22752.htmlhttp://www.shnenglu.com/beer/archive/2007/04/24/22752.html#Feedback0http://www.shnenglu.com/beer/comments/commentRss/22752.htmlhttp://www.shnenglu.com/beer/services/trackbacks/22752.html阅读全文

啤酒 2007-04-24 18:42 发表评论
]]>
2002-2004q国?0个一U学U高校排?3) http://www.shnenglu.com/beer/archive/2007/04/24/22751.html啤酒啤酒Tue, 24 Apr 2007 10:39:00 GMThttp://www.shnenglu.com/beer/archive/2007/04/24/22751.htmlhttp://www.shnenglu.com/beer/comments/22751.htmlhttp://www.shnenglu.com/beer/archive/2007/04/24/22751.html#Feedback0http://www.shnenglu.com/beer/comments/commentRss/22751.htmlhttp://www.shnenglu.com/beer/services/trackbacks/22751.html阅读全文

啤酒 2007-04-24 18:39 发表评论
]]>
2002-2004q国?0个一U学U高校排?2) http://www.shnenglu.com/beer/archive/2007/04/24/22750.html啤酒啤酒Tue, 24 Apr 2007 10:34:00 GMThttp://www.shnenglu.com/beer/archive/2007/04/24/22750.htmlhttp://www.shnenglu.com/beer/comments/22750.htmlhttp://www.shnenglu.com/beer/archive/2007/04/24/22750.html#Feedback0http://www.shnenglu.com/beer/comments/commentRss/22750.htmlhttp://www.shnenglu.com/beer/services/trackbacks/22750.html阅读全文

啤酒 2007-04-24 18:34 发表评论
]]>
2002-2004q国?0个一U学U高校排?1)http://www.shnenglu.com/beer/archive/2007/04/24/22749.html啤酒啤酒Tue, 24 Apr 2007 10:30:00 GMThttp://www.shnenglu.com/beer/archive/2007/04/24/22749.htmlhttp://www.shnenglu.com/beer/comments/22749.htmlhttp://www.shnenglu.com/beer/archive/2007/04/24/22749.html#Feedback0http://www.shnenglu.com/beer/comments/commentRss/22749.htmlhttp://www.shnenglu.com/beer/services/trackbacks/22749.html阅读全文

啤酒 2007-04-24 18:30 发表评论
]]>
2006q国内高校一U学U排名详?/title><link>http://www.shnenglu.com/beer/archive/2007/04/24/22747.html</link><dc:creator>啤酒</dc:creator><author>啤酒</author><pubDate>Tue, 24 Apr 2007 10:07:00 GMT</pubDate><guid>http://www.shnenglu.com/beer/archive/2007/04/24/22747.html</guid><wfw:comment>http://www.shnenglu.com/beer/comments/22747.html</wfw:comment><comments>http://www.shnenglu.com/beer/archive/2007/04/24/22747.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/beer/comments/commentRss/22747.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/beer/services/trackbacks/22747.html</trackback:ping><description><![CDATA[     摘要: 一U学U代码及名称Q?701 数学 排名 学校代码及名U? 整体水^得分 1 ...  <a href='http://www.shnenglu.com/beer/archive/2007/04/24/22747.html'>阅读全文</a><img src ="http://www.shnenglu.com/beer/aggbug/22747.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/beer/" target="_blank">啤酒</a> 2007-04-24 18:07 <a href="http://www.shnenglu.com/beer/archive/2007/04/24/22747.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于"985"http://www.shnenglu.com/beer/archive/2007/04/24/22745.html啤酒啤酒Tue, 24 Apr 2007 09:59:00 GMThttp://www.shnenglu.com/beer/archive/2007/04/24/22745.htmlhttp://www.shnenglu.com/beer/comments/22745.htmlhttp://www.shnenglu.com/beer/archive/2007/04/24/22745.html#Feedback0http://www.shnenglu.com/beer/comments/commentRss/22745.htmlhttp://www.shnenglu.com/beer/services/trackbacks/22745.html一、什么是“985工程”Q?/strong>

  1998q??日,江泽民M记在庆祝北大建校100周年大会上向全社会宣告:“Z实现C化,我国要有若干所h世界先进水^的一大学?#8221;彻落实党中央U教兴国的战略和江泽民同志的号召Q教育部军_在实?#8220;面向21世纪教育振兴行动计划”中,重点支持北京大学、清华大学等部分高等学校创徏世界一大学和高水q_学,U?#8220;985”工程?/p>

  二?#8220;985”工程高校名单Q?/strong>

  一期名单:Q?4所Q?/strong>
  清华大学
  北京大学
  中国U技大学
  南京大学
  复旦大学
  上v交通大?br>  西安交通大?br>  江大学
  哈尔滨工业大?br>  南开大学
  天|大学
  东南大学
  华中U技大学
  武汉大学
  厦门大学
  ׃大学
  湖南大学
  中国h大学
  中南大学
  吉林大学
  北京理工大学
  大连理工大学
  北京航空航天大学
  重庆大学
  电子U技大学
  四川大学
  华南理工大学
  中山大学
  兰州大学
  东北大学
  西北工业大学
  同济大学
  北京师范大学
  中国人民大学

  二期名单Q(4所Q?br>  中国农业大学
  国防U技大学
  中央民族大学
  西北农林U技大学



啤酒 2007-04-24 17:59 发表评论
]]>
1959q全国首?0所重点大学是哪20个和1997q国家批准的全国首批22所?11工程”重点徏N校是?2个?http://www.shnenglu.com/beer/archive/2007/04/24/22740.html啤酒啤酒Tue, 24 Apr 2007 09:55:00 GMThttp://www.shnenglu.com/beer/archive/2007/04/24/22740.htmlhttp://www.shnenglu.com/beer/comments/22740.htmlhttp://www.shnenglu.com/beer/archive/2007/04/24/22740.html#Feedback1http://www.shnenglu.com/beer/comments/commentRss/22740.htmlhttp://www.shnenglu.com/beer/services/trackbacks/22740.html

1959q全国首?0所重点大学是哪20个和1997q国家批准的全国首批22所“211工程”重点院校是哪22个?

中国大学最新权威排名:
一、排行要?
1、国安视程度(各个时期的重点大学、国家投资力度)、实验室装备、对国家的A?
2、学术水qI论文Q、学U精品度
3、师资力量(博士的比例、来自名牌大学的比例、敬业精及_面貌、工作业l及在全国同cdU同行中的地位) 、博D模及效率
4、新生入学成l、教学质?
5、学校的文化、理c学风、校?
6、各个不同的历史时期的状况进行加权分?--历史Q权?0%Q、现Ӟ80%Q和未来发展Q?0%Q综合权衡?

二、中国的大学权威排名Q?
清华、北大、中U大、h大、南京大学、复旦、上交大、哈工大、浙大、西交大?北航?北理工、北师大、南开、同、天大、西工大、华U、东南、大工、武大、中大、北邮、兰大、川大、吉大、山大?(*?北理与北航非常接q? 文字方式的排名无法ƈ?北航在社会上名声E大,再加?0-90q代被贬为部属院校的二十多年北航受媄响较,把北航攑֜前面?)

谈北理与北航的名气Q?
北理VS北航q是一个非常敏感的问题,俗话?同行是冤?
1?0q代--"文革"前,不相上下。北航名字响亮,北理国防端、g安来的学校也颇具力?965q北理的招生宣传力度H然加大、一反常态、Ş象由神兮兮、羞答{、扎根串联,变ؓ理直气壮、大张旗鼓、牛气十뀂招生简章也׃张寥寥数行文字的c草U怸下子变成了纸张特别精致、篇q极大、内定w具震撼力Q北理直属国防部、国防科委领|的精品。据说这一巨大变化是因为当时主持工作的主要负责Z是长期从事地下工作的院长而是多年带兵打仗的时*。这一下子Q较大地提高了北理的影响?965q在北京考区Q北理的录取U仅低于清华、科大。据_负责招生的老师?*Q在陕西北理也是W三名。然而好景不长,1966q?月䆾“文革”开始了?
2?#8220;文革”中,北航U旗名扬天下?
3?972q?-直至1996q恢复国防科工委院校Q虽然同被流放ؓ部属院校Q但北航是航I部Q北理是兵器部,航空Q尽有许多大三U厂Q的牌子依然闪亮Q兵器的牌子却同山沟、三Uѝ陈旧的字眼q到了一赗据说直到现在,一些四川(因四川的三线厂太多)考生的家长一提到北理吓的脸变色Q心跛_速(*U属经病,现在的北理早已大大超了兵器部的范围Q尤其是市场l济的今天,你的孩子只要有本事、留北京、去上v、深x如反掌,甚至ȝ国也是不隑֊到的Q。北理尖端、神U的光环d失去了。在与北航的角逐中北理一直处于下风。幸亏北理还有国?#8220;七五”“八五”14所重点大学的这块牌子,再加上地处北京,因此q不至于太狼狈。还q怺80q代Q从1983q后Q冒Z个北工大Q因毕业生出路好、可留北京;90q代冒出Q?998q前Q个北邮因专业好Q在北京压着北航Q北理与北航差距没怎么拉开。尽如此,北航的名气一直在北理之上?
4?996q后Q?996q恢复国防科工委院校Q北理专业发展出现{机,l费支持也有了可靠保障,名声也好听了Q北理的处境好多了?995q第一?5所q入211工程Q由中央财政厅直接拨ƾ;2000q第十所q入985工程Q成为国安点中的重炏V然而北理的名声一直在北航之下Q?998q北航取代了北邮的位|?
原因有三Q(1Q北航改名ؓ航空航天大学Q航天是高科技、从2000qvQ科技人员待遇特别高,而且航天在北京的研究院特别多。北航又擅长宣传、造舆论,因此知名度越来越高?
Q?Q北理在70q代--1996q的二十q中名声大损、锐气大伤、学U发展受到相当的影响Q尽实力仍然十分强Ԍ但北理的传统Q不擅长舆论Q?#8220;文革”前的导弹领头,北理校友ؓ中国航天作出重大贡献Q至今连个航天学院都没有Q真令h费解、莫名其妙!金牌子你不挂Q究竟ؓ何?N你就没有意识C?#8220;文化”?#8220;理念”有点落伍了么Q既然这样就怪不得你的名气d北航之下?
Q?QŞ形色色排行榜的不良媄响?-3个h操作的Ş形色色的排行榜,他们中年轻者v哄、炒作、恶作剧。年长者(50几岁Qؓ了暴利和其他更深q的目的和企图进行投机,兴风作浪、招摇撞骗、呼风唤雨、点x金、舆论铺天盖地、大有重新造化世界、重新安排山沟뀁当教育界太上皇的架ѝ这决非骇h听闻Q因ZQ武Q的作法和他的排行榜的舆论力度早已大大超出排行榜应有?#8220;?#8221;Q已成ؓ世hx的教育腐败的一个物,成ؓ教育界的一匹害之马,大大损害了教育界的Ş象,成ؓ教育界的一大公実뀂武术连的逆社会的心理障碍和极大的野心Q促使他对北理痛下杀手,对北理排名过低,也一定程度上损害了北理的声誉。武术连的名a“一切从数据出发”。武术连q只q街老鼠Q由于他的贪心、野心、投机、低能、弱智、不学无术,他也只能炮制Z个对大学排行?#8220;大肚子评价体p?#8221;Q这个大肚子体系本n是反科学的Q在众目睽睽下早已现?#8220;白骨_?#8221;的原形,因此武术q的所谓数据,也只不过是脓到白骨精w上的一堆丑肉、烂肉,没有丝毫价倹{乌鸦的膀挡不住太阳的光辉Q北理正在乘W十所q入985工程Q?+8Q的强劲东风Q发生日新月异的变化Q正在ؓ创徏世界知名、国内一高{学府而努力拼搏、重振昔日京工的辉煌指日可待?

2 中国大学最新权威排名介l?

北航与北理不该是冤家Q而应是战友,是^{竞争的争创世界知名大学的国家代表队中的队友?
?952q至2000q_中共中央、中央政府、教育部一共公布了七次"重点大学"?重点首批"名单Q取其交集,集中于下q十所Q即"2+8"十所Q?名校Q他们无愧堪UCؓ"重点中的重点"?
"2"-世界一;"8"-世界知名Q按如下序Q?
北方Q清华、北大、北理工、哈工大、西?
南方Q南大、复旦、上交、浙大、中U大
再加上北航、天大、南开、h大、北师大q五所Q共计十五所大学l成当今中国高校的国安?

中国的重点大?

一、六所重点大学Q?
1954q?2月,教育部在《关于重炚w{学校和专家工作范围的决议》中Q指定以?所学校为全国性重点大学: 中国人民大学、北京大学、清华大学、北京农业大学、北京医学院、哈滨工业大学?

二、十六所重点大学Q?
1959q??2日,中共中央发出《关于在高等学校中指定一扚w点学校的军_》,指定以下16所高校为全国重点大学:
北京大学、中国h民大学、清华大学、中国科技大学、北京工业学院(北京理工大学Q、北京航I学院(北京航空航天大学Q、北京农业大学、北京医学院Q北京医U大学)、北京师范大学、天z大学、哈滨工业大学、复旦大学、上交通大学、华东师范大学、上L一d院、西安交通大学?

三?1959q??8日又增加4所重点大学Q?
协和ȝ大学、哈滨军事工程学院、第四军d学、军事通讯工程学院?

四.六十四所重点大学Q?6+4+44Q:
1960q?0?2日,中央军_在原?0所Q?6+4Q重点大学的基础上,再增?4所重点大学Q?
1、文理(苏式l合大学Q: 吉林大学、南开大学、南京大学、武汉大学、中山大学、四川大学、山东大学、山东vz学院(理科Q、兰州大学?
2、工U: 大连工学院、东北工学院、南京工学院、华南工学院、华中工学院、重庆大学、西北工业大学、合肥工业大学?
3、专门性大学:北京xa学院、北京地质学院、北京邮电学院、北京钢铁学院、北京矿业学院、北京铁道学院、北京化工学院、唐山铁道学院、吉林工业大学、大qvq学院、华东水利学院、华东化工学院、华东hl工学院、同大学、武汉水电学院、中南矿冶学院、成都电讯工E学院、北京农机化学院、北京林学院、北京中d院、中山医学院、北京外国语学院、国际关pd院、北京政法学院、北京对外N易学院、中央音乐学院、北京体育学?

五?1963q??2日,教育部通知增加3所重点大学Q?
江大学、厦门大学、上外国语学院

六?1963q?0?4日,教育部通知增加1所重点大学Q?
南京农学?
*xQ全国重炚w校共68所?

七?978q全?8所重点大学Q?
1978q国务院定了北京大学、清华大学等88所院校为全国性重点大学,因太多,在此不予列D?

八?#8220;七五”?#8220;八五”期间国家重点的高?15所)
北京大学、清华大学、复旦大学、西安交通大学、上交通大学、中国科技大学、北京医U大学、中国h民大学、北京师范大学、中国农业大学、北京理工大学、哈滨工业大学、西北工业大学、北京航I天大学、国防科学技术大?

九、首Ҏ式设立研I生院的高校22所
1978q_l国务院批准成立中国U技大学研究生院?
1984q?月,l国务院批准22所高校首批试办研究生院Q北京大学、中国h民大学、清华大学、北京理工大学、北京航I天大学、北京科技大学、北京农业大学、北京医U大学、北京师范大学、天z大学、南开大学、哈滨工业大学、吉林大学、复旦大学、上交通大学、浙江大学、南京大学、武汉大学、华中理工大学、国防科学技术大学、西安交通大学、上医U大学?
十.1986q第二批试办研究生院的高?0所Q?
1986q?月经国务院批?0所高校试办研究生院Q?中山大学、东南大学、东北大学、大q理工大学、厦门大学、华东师范大学、中国地质大学、西北工业大学、同大学、中国协和医U大学?



因北京医U大学和上vȝ大学分别合ƈ到北京大学和复旦大学Q目前实际只?1所研究生院Q?+22+10-2=31Q?

十一?000q第三批试办研究生院的高?2所Q?
2000q?月教育部又批准了北方交通大学等22所高校试办研究生院Q北方交通大学、北京邮电大学、北京林业大学、东北师范大学、华东理工大学、南京航I天大学、南京理工大学、中国矿业大学、南京农业大学、山东大学、石油大学、湖南大学、中南大学、华南理工大学、四川大学、重庆大学、西南交通大学、电子科技大学、西安电子科技大学、兰州大学、第二军d学、第四军d学?
2002q?月,教育部批准了哈尔滨工E大学、v沛_?所大学试办研究生院。后来又批准西北农林U技大学试办研究生院?
x全国d?6所(31+22+2+1=56)研究生院?

十二?004q教育部指定全国34所考研自行定复试录取U的高校
北京大学 清华大学 中国人民大学 北京航空航天大学 北京理工大学 天|大学 南开大学 中国农业大学 北京师范大学上v交通大?大连理工大学 中国U学技术大?复旦大学 哈尔滨工业大?吉林大学 同济大学 南京大学 华中U技大学 西安交通大?东北大学 东南大学 江大学 华南理工大学 西北工业大学 厦门大学 湖南大学 武汉大学 兰州大学 电子U技大学 中山大学 中南大学 重庆大学 ׃大学 四川大学

十三、首Ҏ有教授Q职资格审Ҏ的高?32所)
北京大学、清华大学、中国h民大学、北京理工大学、北京航I天大学、北京师范大学、中国协和医U大学、北京医U大学、北京农业大学、北京科技大学、南开大学、天z大学、哈滨工业大学、吉林大学、大q理工大学、东北大学、复旦大学、上交通大学、同大学、上医U大学、华东师范大学、南京大学、东南大学、浙江大学、中国科技大学、厦门大学、武汉大学、华中理工大学、中国地质大学、中山大学、西安交通大学、西北工业大学?

十四?1所副部长大学Q?4+7+11-1=31Q?
Q一Q?1992q中央指定:14所书记、校长职务由中央理的高校:北京大学?清华大学?中国人民大学?北京理工大学?北京航空航天大学 、北京师范大学、中国农业大?、北京医U大学、中国科技大学?复旦大学?上v交通大学?西安交通大学?哈尔滨工业大学?西北工业大学14所高校的党委书记、校长职务由中央直接dQ书记和校长享受副部U待遇?
Q二Q?000q增?所Q南京大?江大学 南开大学 天|大学 武汉大学 四川大学 中山大学
Q三Q?003q?2月再新增11所 Q吉林大学、大q理工大学、同大学、东南大学、厦门大学、中南大学?华中U技大学、重庆大学、山东大学、兰州大学、西北农林科技大学?
Q四Q、迄今ؓ止,全国副部U高校d31所Q(*注:北京ȝ大学已ƈ入北京大学,因此14+7+11-1=31Q?

十五?995q第一批入?#8220;211工程”?5所
1995q?2月,W一批入?#8220;211工程”的大学共15所Q北京大学、清华大学、北京理工大学、北京航I天大学、中国农业大学、复旦大学、上交通大学、西安交通大学、哈滨工业大学、中国科技大学、南开大学、天z大学、南京大学、浙江大学、西北工业大学?
十六?003q_教育部公布的入?#8220;211工程”?5所大学名单
l?995q_W一批入?#8220;211工程”?5所大学之后Q?1996q中国h民大学等院校?997q北京科技大学{院校和随后1998q等{一批又一批的大学q入“211工程”Q入?#8220;211”工程大学d辑ֈ95所?003q教育部公布的这95所大学的名单如下:
北京大学、中国h民大学、清华大学、北京交通大学、北京工业大学、北京航I天大学、北京理工大学、北京科技大学、北京化工大学、北京邮电大学、中国农业大学、北京林业大学、北京中医药大学、北京师范大学、北京外国语大学、北京广播学院、对外经N易大学、中央民族大学、中央音乐学院、南开大学、天z大学、天z医U大学、河北工业大学、太原理工大学、内蒙古大学、辽宁大学、大q理工大学、东北大学、大qv事大学、吉林大学、g边大学、东北师范大学、哈滨工业大学、哈滨工程大学、东北农业大学、复旦大学、同大学、上交通大学、华东理工大学、东华大学、上L二医U大学、华东师范大学、上外国语大学、上l大学、上大学、南京大学、苏州大学、东南大学、南京航I天大学、南京理工大学、中国矿业大学、河大学、江南大学、南京农业大学、中国药U大学、南京师范大学、浙江大学、安徽大学、中国科学技术大学、厦门大学、福州大学、南昌大学、山东大学、中国vz大学、石油大学、郑州大学、武汉大学、华中科技大学、中国地质大学、武汉理工大学、湖南大学、中南大学、湖南师范大学、中山大学、暨南大学、华南理工大学、华南师范大学、广西大学、四川大学、重庆大学、西南交通大学、电子科技大学、四川农业大学、西南胦l大学、云南大学、西北大学、西安交通大学、西北工业大学、西安电子科技大学、长安大学、兰州大学、新疆大学、第二军d学、第四军d学、国防科学技术大?

十七、进?#8220;985工程”大学
W一部分Q?已进?#8220;985工程”大学所{v的重点徏讑֍议对各高校的定位及资助经Ҏ量
1998q?2?4日,教育部制订的《面?1世纪教育振兴行动计划》将“若干所”正式列入其中Q明指?#8220;创徏若干所h世界先进水^的一大学和一批一学U?#8221;?
依据国家教育部和各省、市及部委所{订的合同,Ҏ合同书对各学校的定位及资金资助情况(三年内拨ƄҎ量Q,按照共徏合同{旉Q分列如下:
1. 目标定位Q?#8220;世界一大?#8221;
北京大学 18?Q教育部拨款Q?
清华大学 18?Q教育部拨款Q?
2. 目标定位Q?#8220;国内一、国际知名高水^大学”
江大学 14?Q??7亿)Q教育部拨款+省拨ƾ) 1999q?1??
南京大学 12?Q??6亿)Q教育部拨款+省拨ƾ) 1999q??6?
复旦大学 12?Q??6亿)Q教育部拨款+市拨ƾ) 1999q??7?
上v交通大?12?Q??6亿)Q教育部拨款+市拨ƾ) 1999q??7?
中国U技大学 9?Q??3?3亿)Q教育部拨款+中科院拨?省拨ƾ)1999q??5 ?
西安交通大?9?Q??3亿)Q教育部拨款+省拨ƾ) 1999q??1?
哈尔滨工业大?10?Q??3?4亿)Q教育部拨款+国防U工委拨?省拨ƾ)1999q?1?4?
北京理工大学 10?Q??3?4亿)Q教育部拨款+国防U工委拨?市拨ƾ)2000?9?3?
北京师范大学 12?Q??6亿) Q教育部拨款+市拨ƾ)2002??4?

*以上的大学即所谓的“2”+“9”工程Q是国家投资大学的重中之重?
中国人民大学“国际知名的世界一大?#8221;Q虽已签U、但l费未公布)

3. 目标定位Q?#8220;国内外知名的高水q_?#8221;
依据中央资助l费l费情况分列如下Q?
1Q?中央资助l费?亿以上(不含3亿)的大学:
北京航空航天大学 9?Q??3?3亿)Q教育部拨款+国防U工委拨?市拨ƾ)2001
q??3?
西北工业大学 9?Q??3?3亿)Q教育部拨款+国防U工委拨?陕西省、西安市
以土地等形式Q?2002q??2?
南开大学、天z大?两校?4?Q教育部拨款+市拨ƾ) 2000q?2?5?
武汉大学 8?Q??4亿)Q教育部拨款+省拨ƾ) 2001q??3?
四川大学 7.2?Q??3.2亿) Q教育部拨款+省拨ƾ) 2001q??9?
吉林大学 7?Q??3亿) Q教育部拨款+省拨ƾ) 2001q??2?

2Q?中央资助l费?亿的大学Q?
中山大学 12?Q??9亿) Q教育部拨款+省拨ƾ) 2001q?0?6?
׃大学 8?Q??5亿) Q教育部拨款+省拨ƾ) 2001q??6?
东南大学 6?Q??3亿) Q教育部拨款+省拨ƾ) 2001q??2?
华中U技大学 6?Q??3亿) Q教育部拨款+湖北省、武汉市以资金、项目等形式Q?2001q??3?
厦门大学 6?Q??+1.5?1.5亿)Q教育部拨款+徏省拨?厦门市拨ƾ)2001q??2?
同济大学 6?Q??3亿) Q教育部拨款+市拨ƾ) 2002q??6?
重庆大学 5.4?Q??2.4亿) Q教育部拨款+市拨ƾ) 2001q??8?
兰州大学 4.5?Q??1.5?土地Q(教育部拨?省拨ƾ) 2001q?2??

3Q?中央资助l费?亿的大学Q?
中南大学 4?Q??2亿) Q教育部拨款+省拨ƾ) 2001q??7?
湖南大学 4?Q??2亿) Q教育部拨款+省拨ƾ) 2001q??7?
大连理工大学 4?Q??2亿) Q教育部拨款+辽宁省、大q市拨款Q?2001q???
华南理工大学 4?Q??2亿) Q教育部拨款+省拨ƾ) 2001q?0?6?
东北大学 4?Q??1?1亿)Q教育部拨款+省拨?沈阳市拨ƾ) 2002q??3?
成都电子U技大学 3.6?Q??1.6亿) Q教育部拨款+省拨ƾ) 2001q??9?
中国h大学 3?Q教育部、山东省、中国vz局、青岛市LNQ?001q??7?
*2004q_又有中国农业大学Q国防科技大学Q中央民族大学,西北农林U技大学q入“985工程”的行列,?#8220;985工程”大学L辑ֈ38所Q?4+4Q?

十八、国安Ҏ资徏讄十所重中之重大学
?952q至2000q_中共中央、中央政府、教育部一共公布了七次"重点大学"?重点首批"名单Q取其交集,集中于下q十所Q即"2+8"十所Q?名校Q他们无愧堪UCؓ"重点中的重点"?
"2"-世界一;"8"-世界知名Q按如下序Q?
北方Q清华、北大、北理工、哈工大、西?
南方Q南大、复旦、上交、浙大、中U大

*十九、教育部直属大学
?952qvQ教育部指定了一批又一批的大学为教育部直属的(重点Q大学,如北大、清华、h大、复旦等?0q代末,只有不到30所Q然而从90q代中后期vQ急剧扩编Q至今已?2所大学U_教育部直属大学。这些大学只是教育部直属的,他们中有的纳入全国重点大学(如全国六所、十六所、六十四所、八十八所重点大学Q?11工程95所重点大学Q?85工程38所重点大学Q,有的则不属于全国重点大学。到目前为止Q仍有十几所教育部直属大学未U_国家211工程Q即不属于国安点大学)。因此教育部直属大学与全国性重点大学是两个不同的概念,不可混ؓ一谈?
当然全国的著名的重点大学主要集中教育部直属大学这个集团,除外q有直属中科院和国防U工委的中国U技大学、哈滨工业大学、北京理工大学、北京航I天大学、西北工业大学?

72所教育部直属大学名单:
清华大学 北京大学 中国人民大学 北京U技大学
北京化工大学 北京师范大学 北京外国语大?北京语言文化大学
南开大学 天|大学 东北大学 大连理工大学
吉林大学 中南财经政法大学 东北师范大学 复旦大学
上v交通大?同济大学 华东理工大学 西安电子U技大学
华东师范大学 上v外国语大?南京大学 东南大学
无锡d大学 合肥工业大学 江大学 厦门大学
׃大学 青岛h大学 武汉大学 西南交通大?
中国地质大学 华中师范大学 湖南大学 中国药科大学
中山大学 华南理工大学 兰州大学 电子U技大学
四川大学 重庆大学 西南师范大学 西安交通大?
陕西师范大学 西南财经大学 西北农林U技大学 对外l济贸易大学
xa大学 北京邮电大学 中国农业大学 北京林业大学
北京q播学院 xv大学 中国政法大学 中央音乐学院
中国矿业大学 上v财经大学 东北林业大学 华中农业大学
南京农业大学 东华大学 中央戏剧学院 长安大学
北方交通大?华中U技大学 中南大学 中央财经大学
武汉理工大学 中央术学院 北京中医药大?华北电力大学

*二十、国防科委院?
国防U工委院校是规模仅次于教育部直属院校的另一个大学集团?952q_中共中央指定北京工业学院Q北京理工大学)、哈滨工业大学、北京航I学院(北京航空航天大学Q、上交通大学四所大学为国防院校?
国防院校后来又改名ؓ国防U委院校。从50q代后期Q先后又有西北工大、成都电讯、南航加入到国防院校的行列,?963q我国共有八所国防U委院校Q哈滨工业大学Q船?& l和Q、北京理工大学(导弹 & 坦克Q、北京航I天大学(飞机 & 导弹Q、上交通大学(船舶&火RQ、西北工业大学(飞机&导弹 & 船舶Q、成都电讯工E学院(电子Q、南京航I天大学(飞机Q、太原机械学院(兵器--现在的中北大学)
1966q_国防U委院校在上q八大院校的基础上又增加了哈军工、西军电、南炮工?
七十q代初国防科委院校解散,哈工大、上交大及哈船工(原哈军工的v军系Q分到船舉。北航、西工大、南航分到航I部。北理工、南京理工大学(卛_炮工Q分到兵器部。电子科大(成都电讯Q、西安电子科大(西军电)被分到电子部。随后,哈工大{到航天部Q上交大{到教育部Q电子科大、西安电子科大分到电子部后来又归C息业部。哈军工的主体改名ؓ国防U技大学Q?989q归d领导?
1996q_恢复国防U工委院校。只有七所Q哈工大、北航、北理工、西工大、南理工、南航、哈船工。该七所国防U工委院校全?11工程大学Q其中哈工大、北理工、北航、西工大是首?5所q入211工程的大学,而且也是排在靠前位置?85工程大学?

*二十一、国防院校十分重要的C
1?0-60q代四所国防院校全部U_国家重点扶植?0所大学Q清华、北大、复旦、西交大、中U大、哈军工、哈工大、北理工、北航、上交大)?
2?959q中׃央指?6所重点大学Q国防院校就占了4所Q哈工大、北理工、北航、上交大)?
3?0q代末,国务院批准了W一批向联合国教U文l织h?0所大学中,国防院校也占?所Q清华、北大、复旦、上交大、西交大、中U大、国防科大、哈工大、北理工、北航?
4?983q_中国在联合国备案?4所重点大学国防院校占了4所Q国防科技大学、哈工大、北理工、北航?
5?#8220;七五”?#8220;八五”期间国家重点的高?5所Q国防院校也占了5Q?+1Q所Q国防科技大学、哈工大、北理工、北航、西工大Q后补上的)?
6?995q_W一批入?#8220;211工程”的大学共15所Q国防院校也占了4所Q哈工大、北航、北理工、西工大Q?
7?992q中央指定的14所书记、校长职务由中央理的高校中Q即副部长Q,国防院校也占4所Q哈工大、北航、北理工、西工大Q?
8?999q开始的985工程Q获取中央资助在6亿(?亿)以上Q且总资助在9亿(?亿)以上的大?3所Q国防院校也占了4所Q哈工大、北理工、北航、西工大Q?/div>


啤酒 2007-04-24 17:55 发表评论
]]>带有界面的“读取日志”! 不知道哪位会作分析,法不会呀Q只L意思呀http://www.shnenglu.com/beer/archive/2006/09/07/12123.html啤酒啤酒Thu, 07 Sep 2006 06:37:00 GMThttp://www.shnenglu.com/beer/archive/2006/09/07/12123.htmlhttp://www.shnenglu.com/beer/comments/12123.htmlhttp://www.shnenglu.com/beer/archive/2006/09/07/12123.html#Feedback0http://www.shnenglu.com/beer/comments/commentRss/12123.htmlhttp://www.shnenglu.com/beer/services/trackbacks/12123.html// Read_EventDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Read_Event.h"
#include "Read_EventDlg.h"
#include "DescriptionDiaLog.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////
//int event_auditsucceed_num;  //记录审核成功记录的个?br />//int event_info_num;    //记录信息记录的个?br />//int event_error_num;    //记录错误记录的个敊W?br />//int event_warn_num;    //记录警告记录的个?br />//int event_auditdefeat_num;  //记录审核p|的个?/p>

//char *event_category;     //事gc?br />//char *event_sourcename=NULL;   //事g来源
//char *event_computername=NULL;  //事g计算机名
//char *event_descriptive_msg=NULL;  //事g描述
//char event_el_user[257];    //事g用户
//char event_el_domain[257];   //事g?br />//char host_final_out_msg[1024];  //最后输出的信息

FILE *fp;        //保存的文?br />int hh=0;        //记录cd的标志,用于位图的选择
int event_record=0;      //事g记录的个?br />os_el el[1];
int nItem=0;       //对于索引记录的当前标?br />int istype=0;       //用于事gcd的标?br />BOOL issub;        //一个开关项
/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
 CAboutDlg();

// Dialog Data
 //{{AFX_DATA(CAboutDlg)
 enum { IDD = IDD_ABOUTBOX };
 //}}AFX_DATA

 // ClassWizard generated virtual function overrides
 //{{AFX_VIRTUAL(CAboutDlg)
 protected:
 virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
 //}}AFX_VIRTUAL

// Implementation
protected:
 //{{AFX_MSG(CAboutDlg)
 //}}AFX_MSG
 DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
 //{{AFX_DATA_INIT(CAboutDlg)
 //}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);
 //{{AFX_DATA_MAP(CAboutDlg)
 //}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
 //{{AFX_MSG_MAP(CAboutDlg)
  // No message handlers
 //}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CRead_EventDlg dialog

CRead_EventDlg::CRead_EventDlg(CWnd* pParent /*=NULL*/)
 : CDialog(CRead_EventDlg::IDD, pParent)
{
 //{{AFX_DATA_INIT(CRead_EventDlg)
 m_mm_host_state = _T("");
 //}}AFX_DATA_INIT
 // Note that LoadIcon does not require a subsequent DestroyIcon in Win32
 m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

}

void CRead_EventDlg::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);
 //{{AFX_DATA_MAP(CRead_EventDlg)
 DDX_Control(pDX, IDC_LIST, m_mm_host_ListCtrl);
 DDX_Text(pDX, IDC_STATE, m_mm_host_state);
 //}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CRead_EventDlg, CDialog)
 //{{AFX_MSG_MAP(CRead_EventDlg)
 ON_WM_SYSCOMMAND()
 ON_WM_PAINT()
 ON_WM_QUERYDRAGICON()
 ON_BN_CLICKED(IDC_SECURE, OnSecure)
 ON_BN_CLICKED(IDC_SYSTEM, OnSystem)
 ON_BN_CLICKED(IDC_APPLICATION, OnApplication)
 ON_NOTIFY(NM_CLICK, IDC_LIST, OnClickList)
 ON_BN_CLICKED(IDC_DELETE, OnDelete)
 ON_BN_CLICKED(IDC_DETAIL, OnDetail)
 ON_BN_CLICKED(IDC_SAVE, OnSave)
 ON_BN_CLICKED(IDC_SAVEHARD, OnSave_Hard)
 //}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CRead_EventDlg message handlers

BOOL CRead_EventDlg::OnInitDialog()
{
 CDialog::OnInitDialog();

 // Add "About..." menu item to system menu.

 // IDM_ABOUTBOX must be in the system command range.
 ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
 ASSERT(IDM_ABOUTBOX < 0xF000);

 CMenu* pSysMenu = GetSystemMenu(FALSE);
 if (pSysMenu != NULL)
 {
  CString strAboutMenu;
  strAboutMenu.LoadString(IDS_ABOUTBOX);
  if (!strAboutMenu.IsEmpty())
  {
   pSysMenu->AppendMenu(MF_SEPARATOR);
   pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
  }
 }

 // Set the icon for this dialog.  The framework does this automatically
 //  when the application's main window is not a dialog
 SetIcon(m_hIcon, TRUE);   // Set big icon
 SetIcon(m_hIcon, FALSE);  // Set small icon
 
 // TODO: Add extra initialization here
 

//////////////////////////我加?//////////////////////

 issub=false;
 //l各事件数目初始化
 Set_EventNum();       

 m_mm_host_ListCtrl.SetRedraw(FALSE);
    //更新内容
    m_mm_host_ListCtrl.SetRedraw(TRUE);
    m_mm_host_ListCtrl.Invalidate();
    m_mm_host_ListCtrl.UpdateWindow();
 //删除所有的?br /> m_mm_host_ListCtrl.DeleteAllItems();


 //l图表初始化
 Init_ImageList();
 //讄m_mm_host_ListCtrl风格
 LONG lStyle;
    lStyle = GetWindowLong(m_mm_host_ListCtrl.m_hWnd, GWL_STYLE);//获取当前H口style
    lStyle &= ~LVS_TYPEMASK; //清除昄方式?br />    lStyle |= LVS_REPORT; //讄style
    SetWindowLong(m_mm_host_ListCtrl.m_hWnd, GWL_STYLE, lStyle);//讄style
 
    DWORD dwStyle = m_mm_host_ListCtrl.GetExtendedStyle();
    dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrlQ?br />    dwStyle |= LVS_EX_GRIDLINES;//|格U(只适用与report风格的listctrlQ?br />    dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控g
 dwStyle |=LVS_EX_HEADERDRAGDROP;
 dwStyle |=LVS_EX_SUBITEMIMAGES;
    m_mm_host_ListCtrl.SetExtendedStyle(dwStyle); //讄扩展风格


 //插入?br /> m_mm_host_ListCtrl.InsertColumn(0,"日志序号",LVCFMT_CENTER,60,0);
 m_mm_host_ListCtrl.InsertColumn(1,"分类",LVCFMT_CENTER,80,4);
 m_mm_host_ListCtrl.InsertColumn(2,"来源",LVCFMT_CENTER,80,1);
 m_mm_host_ListCtrl.InsertColumn(3,"日期",LVCFMT_CENTER,80,2);
 m_mm_host_ListCtrl.InsertColumn(4,"旉",LVCFMT_CENTER,80,3);
 m_mm_host_ListCtrl.InsertColumn(5,"ID",LVCFMT_CENTER,50,5);
 m_mm_host_ListCtrl.InsertColumn(6,"用户",LVCFMT_CENTER,120,6);
 m_mm_host_ListCtrl.InsertColumn(7,"计算?,LVCFMT_CENTER,120,7);
 m_mm_host_ListCtrl.InsertColumn(8,"描述",LVCFMT_CENTER,250,7);
//////////////////////////我加?//////////////////////


 return TRUE;  // return TRUE  unless you set the focus to a control
}

void CRead_EventDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
 if ((nID & 0xFFF0) == IDM_ABOUTBOX)
 {
  CAboutDlg dlgAbout;
  dlgAbout.DoModal();
 }
 else
 {
  CDialog::OnSysCommand(nID, lParam);
 }
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CRead_EventDlg::OnPaint()
{
 if (IsIconic())
 {
  CPaintDC dc(this); // device context for painting

  SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

  // Center icon in client rectangle
  int cxIcon = GetSystemMetrics(SM_CXICON);
  int cyIcon = GetSystemMetrics(SM_CYICON);
  CRect rect;
  GetClientRect(&rect);
  int x = (rect.Width() - cxIcon + 1) / 2;
  int y = (rect.Height() - cyIcon + 1) / 2;

  // Draw the icon
  dc.DrawIcon(x, y, m_hIcon);
 }
 else
 {
  CDialog::OnPaint();
 }
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.

HCURSOR CRead_EventDlg::OnQueryDragIcon()
{
 return (HCURSOR) m_hIcon;
}
///////////////////////////////////////////////////////////
void CRead_EventDlg::OnSecure()
{
 // TODO: Add your control notification handler code here
 UpdateData(TRUE);
 Set_EventNum();
 m_mm_host_state=_T("安全日志列表");
 Win_startel("Security");
 istype=1;
 UpdateData(FALSE);
}
////////////////////////////////////////////////////////////
void CRead_EventDlg::OnSystem()
{
 // TODO: Add your control notification handler code here
 UpdateData(TRUE);
 Set_EventNum();
 m_mm_host_state=_T("pȝ日志列表");
 Win_startel("System");
 istype=2;
 UpdateData(FALSE);
}
///////////////////////////////////////////////////////////
void CRead_EventDlg::OnApplication()
{
 // TODO: Add your control notification handler code here
 UpdateData(TRUE);
 Set_EventNum();
 m_mm_host_state=_T("应用日志列表");
 Win_startel("Application");
 istype=3;
 UpdateData(FALSE);
}
////////////////////////////////////////////////////////////
char* CRead_EventDlg::El_GetCategory(int category_id)
{
 //得到事g记录的类型ƈ且返?br /> char *cat;
 if(!issub)
 {
  switch(category_id)
  {
   case EVENTLOG_AUDIT_SUCCESS:
    cat = "审核成功";
    event_auditsucceed_num++;
    hh=1;
    break;
   case EVENTLOG_INFORMATION_TYPE:
    cat = "信息";
    event_info_num++;
    hh=2;
    break;
   case EVENTLOG_ERROR_TYPE:
    cat = "错误";
    event_error_num++;
    hh=3;
    break;
   case EVENTLOG_WARNING_TYPE:
    cat = "警告";
    event_warn_num++;
    hh=4;
    break;
   case EVENTLOG_AUDIT_FAILURE:
    cat = "审核p|";
    event_auditdefeat_num++;
    hh=5;
    break;
   default:
    cat = "Unknown";
    break;
  }
 }
 else
 {
  switch(category_id)
  {
   case EVENTLOG_AUDIT_SUCCESS:
    cat = "审核成功";
    hh=1;
    break;
   case EVENTLOG_INFORMATION_TYPE:
    cat = "信息";
    hh=2;
    break;
   case EVENTLOG_ERROR_TYPE:
    cat = "错误";
    hh=3;
    break;
   case EVENTLOG_WARNING_TYPE:
    cat = "警告";
    hh=4;
    break;
   case EVENTLOG_AUDIT_FAILURE:
    cat = "审核p|";
    hh=5;
    break;
   default:
    cat = "Unknown";
    break;
  }
 }
   
    return(cat);
}
////////////////////////////////////////////////////////////////
int CRead_EventDlg::El_getEventDLL(char *evt_name, char *event_sourcename1, char *event)
{
 HKEY key;
    DWORD ret;
    char keyname[256];


    keyname[255] = '\0';

    _snprintf(keyname, 254,
            "System\\CurrentControlSet\\Services\\EventLog\\%s\\%s",
            evt_name,
            event_sourcename1);

    // 打开注册表Opening registry     
    if(RegOpenKeyEx(HKEY_LOCAL_MACHINE, keyname, 0, KEY_ALL_ACCESS, &key)
            != ERROR_SUCCESS)
    {
        return(0);   
    }


    ret = MAX_PATH -1; 
    if (RegQueryValueEx(key, "EventMessageFile", NULL,
                NULL, (LPBYTE)event, &ret) != ERROR_SUCCESS)
    {
        event[0] = '\0'; 
        return(0);
    }

    RegCloseKey(key);
    return(1);
}
////////////////////////////////////////////////////////////////
char* CRead_EventDlg::El_GetMessage(EVENTLOGRECORD *er, char *event_name, char *event_sourcename2, LPTSTR *el_sstring)
{
 DWORD fm_flags = 0;
    char tmp_str[257];
    char event[MAX_PATH +1];
    char *curr_str;
    char *next_str;
    LPSTR message = NULL;

    HMODULE hevt;

    // Initializing variables
    event[MAX_PATH] = '\0';
    tmp_str[256] = '\0';

    //Flags for format event
    fm_flags |= FORMAT_MESSAGE_FROM_HMODULE;
    fm_flags |= FORMAT_MESSAGE_ALLOCATE_BUFFER;
    fm_flags |= FORMAT_MESSAGE_ARGUMENT_ARRAY;

    //Get the file name from the registry (stored on event)
    if(!El_getEventDLL(event_name, event_sourcename2, event))
    {
        return(NULL);    
    }    

    curr_str = event;

    // If our event has multiple libraries, try each one of them 
    while((next_str = strchr(curr_str, ';')))
    {
        *next_str = '\0';
        next_str++;

        ExpandEnvironmentStrings(curr_str, tmp_str, 255);
        hevt = LoadLibraryEx(tmp_str, NULL, DONT_RESOLVE_DLL_REFERENCES);
        if(hevt)
        {
            if(!FormatMessage(fm_flags, hevt, er->EventID,
                        0,
                        (LPTSTR) &message, 0, el_sstring))
            {
                message = NULL;   
            }
            FreeLibrary(hevt);

            /* If we have a message, we can return it */
            if(message)
                return(message);
        }

        curr_str = next_str;  
    }

    ExpandEnvironmentStrings(curr_str, tmp_str, 255);
    hevt = LoadLibraryEx(tmp_str, NULL, DONT_RESOLVE_DLL_REFERENCES);
    if(hevt)
    {
        int hr;   
        if(!(hr = FormatMessage(fm_flags, hevt, er->EventID,
                        0,
                        (LPTSTR) &message, 0, el_sstring)))
        {
            message = NULL;   
        }
        FreeLibrary(hevt);

        /* If we have a message, we can return it */
        if(message)
            return(message);
    }

    return(NULL);
}
/////////////////////////////////////////////////////////////////
BOOL CRead_EventDlg::Init_ImageList()
{
 //l图表初始化讄
  HIMAGELIST hList = ImageList_Create(32,32, ILC_COLOR8 |ILC_MASK , 6, 1);
  m_cImageListNormal.Attach(hList);
 
  hList = ImageList_Create(16, 16, ILC_COLOR8 | ILC_MASK, 6, 1);
  m_cImageListSmall.Attach(hList);

  // Load the large icons
  CBitmap cBmp;
 
  cBmp.LoadBitmap(IDB_BITMAP1);
  m_cImageListNormal.Add(&cBmp, RGB(255,0, 255));
  cBmp.DeleteObject();
 
  // Load the small icons
  cBmp.LoadBitmap(IDB_BITMAP2);
  m_cImageListSmall.Add(&cBmp, RGB(255,0, 255));
 
  // Attach them
  m_mm_host_ListCtrl.SetImageList(&m_cImageListNormal, LVSIL_NORMAL);
  m_mm_host_ListCtrl.SetImageList(&m_cImageListSmall, LVSIL_SMALL);
 
  return TRUE;
}
///////////////////////////////////////////////////////////////
void CRead_EventDlg::Insert_Record()
{
 //在列表中插入列表?br /> CString str; 
 LVITEM lvi;

 lvi.mask =  LVIF_TEXT;
 lvi.iItem = event_record;
 str.Format(_T("%d"),event_record+1);
 lvi.iSubItem = 0;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.InsertItem(&lvi);


 str.Format(_T("%s"), event_category);
 lvi.iSubItem = 1;
 lvi.mask =  LVIF_IMAGE | LVIF_TEXT;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 //选择位图  
 switch(hh)
 {
 case 0:
  lvi.iImage = 0; 
  break;
 case 1:
  lvi.iImage = 1;
  break;
 case 2:
  lvi.iImage = 2;
  break;
 case 3:
  lvi.iImage = 3;
  break;
 case 4:
  lvi.iImage = 4;
  break;
 default:
  lvi.iImage = 5;
  break;
 }
 
 m_mm_host_ListCtrl.SetItem(&lvi);

 //输出来源  
 str.Format(_T("%s"),event_sourcename);
 lvi.iSubItem = 2;
 lvi.mask = LVIF_TEXT;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.SetItem(&lvi);
 //输出日期  
 tm  *event_time = localtime((const  long  *)&el->er->TimeWritten);
 str.Format(_T("%4hd-%2hd-%2hd"),event_time->tm_year + 1900,event_time->tm_mon + 1,event_time->tm_mday);
 lvi.iSubItem = 3;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.SetItem(&lvi);
 //输出旉  
 str.Format(_T("%.2hd:%.2hd:%.2hd"),event_time->tm_hour,event_time->tm_min,event_time->tm_sec);
 lvi.iSubItem = 4;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.SetItem(&lvi);

 //输出ID
 str.Format(_T("%d"),(WORD)el->er->EventID);
 lvi.iSubItem = 5;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.SetItem(&lvi);
 //输出用户  
 str.Format(_T("%s/%s"),event_el_domain,event_el_user);
 lvi.iSubItem = 6;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.SetItem(&lvi);
 //输出计算机 ?br /> str.Format(_T("%s"),event_computername);
 lvi.iSubItem = 7;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.SetItem(&lvi);
 //输出描述
 str.Format(_T("%s"),event_descriptive_msg);
 lvi.iSubItem = 8;
 lvi.pszText = (LPTSTR)(LPCTSTR)(str);
 m_mm_host_ListCtrl.SetItem(&lvi);
}
///////////////////////////////////////////////////////////////////////
void CRead_EventDlg::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
 //当鼠标在cd中点LQ返回被点中的记录号
 // TODO: Add your control notification handler code here
 nItem = -1;
 LPNMITEMACTIVATE lpNMItemActivate = (LPNMITEMACTIVATE)pNMHDR;

 if(lpNMItemActivate != NULL)
 {
  nItem = lpNMItemActivate->iItem+1;
 }
 
 *pResult = 0;
}
//////////////////////////////////////////////////////////////
void CRead_EventDlg::OnDelete()
{
 //删除被选中的记?br /> // TODO: Add your control notification handler code here
 //判断是否选择了日志类型,如果没有退?br /> if ((istype!=1)&&(istype!=2)&&(istype!=3))
 {
  MessageBox("请选择日志cd!","警告!",MB_OK|MB_ICONEXCLAMATION);
  return ;
 }
 //判断是否选中了记录,如果没有退?br /> if (nItem==0)
 {
  MessageBox("请选择日志记录!","警告!",MB_OK|MB_ICONEXCLAMATION);
  return ;
 }

 int i,iState;
 int nItemSelected=m_mm_host_ListCtrl.GetSelectedCount();//得到所选表Ҏ
 int nItemCount=m_mm_host_ListCtrl.GetItemCount();//得到表项L
 
 //如果没有选中Q退?br /> if(nItemSelected<1)
 {
  MessageBox("请选择日志记录!","警告!",MB_OK|MB_ICONEXCLAMATION); 
  return;  
 }

 //寚w中的记录进行删?br /> for(i=nItemCount-1;i>=0;i--)
 {

  iState=m_mm_host_ListCtrl.GetItemState(i,LVIS_SELECTED);

  if(iState!=0)
  {
   m_mm_host_ListCtrl.DeleteItem(i);
   nItem=0;
  }  
 }
 
 if (((istype!=1)&&(istype!=2)&&(istype!=3)))
 {
  MessageBox("请选择日志cd!","警告!",MB_OK|MB_ICONEXCLAMATION);
  return ;
 }


}
//////////////////////////////////////////////////////////////////////
void CRead_EventDlg::OnDetail()
{
 //按钮响应函数
 //判断是否选中cdQ没有就退?br /> if ((istype!=1)&&(istype!=2)&&(istype!=3))
 {
  MessageBox("请选择日志cd!","警告!",MB_OK|MB_ICONEXCLAMATION);
  return ;
 }
 //判断选中记录Q没有就退?br /> if (nItem==0)
 {
  MessageBox("请选择日志记录!","警告!",MB_OK|MB_ICONEXCLAMATION);
  return ;
 }
 //如果选中cdp用DescriptionDiaLog对话?br /> if ((istype==1)||(istype==2)||(istype==3))
 {
  DescriptionDiaLog DescriptionDlg;
  DescriptionDlg.DoModal();
 }
 
 else
 {
  MessageBox("请选择日志cd!","警告!",MB_OK|MB_ICONINFORMATION);

  return ;
 }

 // TODO: Add your control notification handler code here

}
/////////////////////////////////////////////////////////////////////
void CRead_EventDlg::OnSave()
{
 // TODO: Add your control notification handler code here
 //Ҏ志进行列表保?br /> //判断列表是否有记?br /> switch(istype)
 {
 case 1:
  break;
 case 2:
  break;
 case 3:
  break;
 default:
  MessageBox("请选择日志cd","警告!",MB_OK|MB_ICONEXCLAMATION);
  return;
   }
 //得到列表中记录的L
 event_record=m_mm_host_ListCtrl.GetItemCount();
 //Ҏ志进行保?br /> //保存单个记录
 CString sFileName;
 sFileName.Format("");

 CFileDialog dlg(FALSE, "txt", sFileName,
     OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,
     "文本文g(*.txt)|*.txt|文本文g(*.doc)|*.doc||", this); 
 if (nItem!=0)
 {
  if(IDCANCEL == (MessageBox("您确定要保存一个日志记录?","提示!",MB_OKCANCEL|MB_ICONQUESTION)))
  {
   nItem=0;
   return;
  }
  if (dlg.DoModal() == IDOK)
  {
   dlg.m_ofn.lpstrTitle = _T("保存日志记录");
   CString fileName = dlg.GetPathName();
   fp = fopen(fileName,"w");
   Save_Single_Record(nItem);

  }
  nItem=0;
  return ;
 }

 ///////////////////////////////////
 //保存整个列表记录
 if(IDCANCEL==(MessageBox("您确定要保存日志文gQ?,"提示!",MB_OKCANCEL|MB_ICONQUESTION)))
 {
  nItem=0;
  return;
 }


 if (dlg.DoModal() == IDOK)
 {
  dlg.m_ofn.lpstrTitle = _T("保存日志文g");
  CString fileName = dlg.GetPathName();

  fp = fopen(fileName,"w");
  switch(istype)
  {
  case 1:
   Save_Security();
   break;
  case 2:
   Save_System();
   break;
  case 3:
   Save_Application();
   break;
  default:
   MessageBox("请选择日志cd","警告!",MB_OK|MB_ICONEXCLAMATION);
   return;
    }

 }
}
//////////////////////////////////////////////////////////////////////
void CRead_EventDlg::Read_event(os_el *el, int printit)
{
 //d日志
 DWORD nstr;
    DWORD user_size;
    DWORD domain_size;
    DWORD read, needed;
    int size_left;
    int str_size;

    char *mbuffer[BUFFER_SIZE];
    LPSTR sstr = NULL;
 //int i=0;
 char *tmp_str = NULL;


 char el_string[1025];
    LPSTR el_sstring[57];

    //Er must point to the mbuffer
    el->er = (EVENTLOGRECORD *) &mbuffer;

    /* Zeroing the last values */
    el_string[1024] = '\0';
    event_el_user[256] = '\0';
    event_el_domain[256] = '\0';
    host_final_out_msg[1023] = '\0';
    el_sstring[56] = NULL;
 //判断是否有记?br /> if( my_host_IsListCtrl == true)
 {
  my_host_IsListCtrl = false;
  m_mm_host_ListCtrl.DeleteAllItems();
 }

    //L志记录  ?
    while(ReadEventLog(el->h,
                EVENTLOG_FORWARDS_READ | EVENTLOG_SEQUENTIAL_READ,
                0,
                el->er, BUFFER_SIZE -1, &read, &needed))
    {

        while(read > 0)
        {


   //得到事g的类?br />            event_category = El_GetCategory(el->er->EventType);
   //得到事g来源
            event_sourcename = (LPSTR) ((LPBYTE) el->er + sizeof(EVENTLOGRECORD));
   //得到计算机名
            event_computername = event_sourcename + strlen(event_sourcename) + 1;
   //l描qC息初始化
            event_descriptive_msg = NULL;


            // 初始化domain/user寸
            user_size = 255; domain_size = 255;
            event_el_domain[0] = '\0';
            event_el_user[0] = '\0';

   
            // 讄事g的一些描q?
            if(el->er->NumStrings)
            { 
                size_left = 1020; 

                sstr = (LPSTR)((LPBYTE)el->er + el->er->StringOffset);
                el_string[0] = '\0';

                for (nstr = 0;nstr < el->er->NumStrings;nstr++)
                {
                    str_size = strlen(sstr); 
                    strncat(el_string, sstr, size_left);

                    tmp_str= strchr(el_string, '\0');
                    if(tmp_str)
                    {
                        *tmp_str = ' ';  
                        tmp_str++; *tmp_str = '\0';
                    }
                    size_left-=str_size + 1;

                    if(nstr <= 54)
                        el_sstring[nstr] = (LPSTR)sstr;

                    sstr = strchr( (LPSTR)sstr, '\0');
                    sstr++;
     
                }

                // 得到事g描述
                event_descriptive_msg = El_GetMessage(el->er, el->event_name, event_sourcename, el_sstring);
                if(event_descriptive_msg != NULL)
                {
                 
                    tmp_str = event_descriptive_msg;   
                    while((tmp_str = strchr(tmp_str, '\n')))
                    {
                        *tmp_str = ' ';
                        tmp_str++;         
                    }   

                    tmp_str = event_descriptive_msg;   
                    while((tmp_str = strchr(tmp_str, '\r')))
                    {
                        *tmp_str = ' ';
                        tmp_str++;
      //strchr(tmp_str, '\n');
                    }   
                }
            }
            else
            {
                strncpy(el_string, "(no message)", 1020); 
            }
            // 得到username
            if (el->er->UserSidLength)
            {
                SID_NAME_USE account_type;
                if(!LookupAccountSid(NULL, (SID *)((LPSTR)el->er + el->er->UserSidOffset),
                            event_el_user, &user_size, event_el_domain, &domain_size, &account_type))  
                {
                    strncpy(event_el_user, "(no user)", 255);
                    strncpy(event_el_domain, "no domain", 255);
                }

            }

            else
            {
                strncpy(event_el_user, "A", 255); 
                strncpy(event_el_domain, "N", 255); 
            }
   
   /////////////////////////////////////
   //插入列表
   Insert_Record();
   ////////////////////////////////////
   
            if(event_descriptive_msg != NULL)
                LocalFree(event_descriptive_msg);

            // Changing the point to the er
   //i++;
   event_record++;
            read -= el->er->Length;
            el->er = (EVENTLOGRECORD *)((LPBYTE) el->er + el->er->Length);
   
        } 
  my_host_IsListCtrl = true;
  
  CString strlove;
  //输出事g个数
  strlove.Format("%d",event_record);
  GetDlgItem(IDC_EVENTNUM)->SetWindowText(strlove);
  //输出事g错误个数
  strlove.Format("%d",event_error_num);
  GetDlgItem(IDC_ERRORNUM)->SetWindowText(strlove);
  //输出事g信息个数
  strlove.Format("%d",event_info_num);
  GetDlgItem(IDC_INFONUM)->SetWindowText(strlove);
  //输出事g警告个数
  strlove.Format("%d",event_warn_num);
  GetDlgItem(IDC_WARNNUM)->SetWindowText(strlove);
  //输出事g审核成功个数  
  strlove.Format("%d",event_auditsucceed_num);
  GetDlgItem(IDC_AUDITSUCCEEDNUM)->SetWindowText(strlove);
  //输出事g审核p|个数  
  strlove.Format("%d",event_auditdefeat_num);
  GetDlgItem(IDC_AUDITDEFEATNUM)->SetWindowText(strlove);

        // Setting er to the beginning of the buffer 
        el->er = (EVENTLOGRECORD *)&mbuffer;  
    }
 event_record=0;
}
///////////////////////////////////////////////////////////////////////////
void CRead_EventDlg::Set_EventNum()

 //l记录数字初始化
 event_record=0;
 event_auditsucceed_num=0;
 event_info_num=0;
 event_error_num=0;
 event_warn_num=0;
 event_auditdefeat_num=0;

}
///////////////////////////////////////////////////////////////////
int CRead_EventDlg::Start_EL(char *app, os_el *el)
{

 el->h = OpenEventLog(NULL, app);
    if(!el->h)
    {
        return(0);    
    }

    el->event_name = app;
    GetOldestEventLogRecord(el->h, &el->record);

    return(1);
}
////////////////////////////////////////////////////////////////////////
void CRead_EventDlg::Win_startel(char *eventlog)
{
 Start_EL(eventlog,el);
    Read_event(el,1);
}
////////////////////////////////////////////////////////////////////
void CRead_EventDlg::Save_event(os_el *el, int printit)
{
 event_record=0;
 DWORD nstr;
    DWORD user_size;
    DWORD domain_size;
    DWORD read, needed;
    int size_left;
    int str_size;

    char *mbuffer[BUFFER_SIZE];
    LPSTR sstr = NULL;
 //int i=0;
 char *tmp_str = NULL;
 
    char el_string[1025];
    char final_out_msg[1024];  //最后输出的信息
    LPSTR el_sstring[57];

    /* Er must point to the mbuffer */
    el->er = (EVENTLOGRECORD *) &mbuffer;

    // Zeroing the last values
    el_string[1024] = '\0';
    event_el_user[256] = '\0';
    event_el_domain[256] = '\0';
    final_out_msg[1023] = '\0';
    el_sstring[56] = NULL;

    // Reading the event log     
    while(ReadEventLog(el->h,
                EVENTLOG_FORWARDS_READ | EVENTLOG_SEQUENTIAL_READ,
                0,
                el->er, BUFFER_SIZE -1, &read, &needed))
    {
        while(read > 0)
        {
   //得到事g的类?br />            event_category = El_GetCategory(el->er->EventType);
   //得到事g来源
            event_sourcename = (LPSTR) ((LPBYTE) el->er + sizeof(EVENTLOGRECORD));
   //得到计算机名
            event_computername = event_sourcename + strlen(event_sourcename) + 1;
   //l描qC息初始化
            event_descriptive_msg = NULL;


            //初始化domain/user寸
            user_size = 255; domain_size = 255;
            event_el_domain[0] = '\0';
            event_el_user[0] = '\0';


            // 讄事g的一些描q?
            if(el->er->NumStrings)
            { 
                size_left = 1020; 

                sstr = (LPSTR)((LPBYTE)el->er + el->er->StringOffset);
                el_string[0] = '\0';

                for (nstr = 0;nstr < el->er->NumStrings;nstr++)
                {
                    str_size = strlen(sstr); 
                    strncat(el_string, sstr, size_left);

                    tmp_str= strchr(el_string, '\0');
                    if(tmp_str)
                    {
                        *tmp_str = ' ';  
                        tmp_str++; *tmp_str = '\0';
                    }
                    size_left-=str_size + 1;

                    if(nstr <= 54)
                        el_sstring[nstr] = (LPSTR)sstr;

                    sstr = strchr( (LPSTR)sstr, '\0');
                    sstr++;
     
                }

                //Get a more descriptive message (if available)
                event_descriptive_msg = El_GetMessage(el->er, el->event_name, event_sourcename, el_sstring);
                if(event_descriptive_msg != NULL)
                {
                    // Remove any \n or \r
                    tmp_str = event_descriptive_msg;   
                    while((tmp_str = strchr(tmp_str, '\n')))
                    {
                        *tmp_str = ' ';
                        tmp_str++;
           
                    }   

                    tmp_str = event_descriptive_msg;   
                    while((tmp_str = strchr(tmp_str, '\r')))
                    {
                        *tmp_str = ' ';
                        tmp_str++;
      //strchr(tmp_str, '\n');

                    }   
                }
            }
            else
            {
                strncpy(el_string, "(no message)", 1020); 
            }


            // 得到username
            if (el->er->UserSidLength)
            {
                SID_NAME_USE account_type;
                if(!LookupAccountSid(NULL, (SID *)((LPSTR)el->er + el->er->UserSidOffset),
                            event_el_user, &user_size, event_el_domain, &domain_size, &account_type))  
                {
                    strncpy(event_el_user, "(no user)", 255);
                    strncpy(event_el_domain, "no domain", 255);
                }

            }

            else
            {
                strncpy(event_el_user, "A", 255); 
                strncpy(event_el_domain, "N", 255); 
            }

            if(printit)
            {
                tm   *event_time   =   localtime((const   long   *)&el->er->TimeWritten);

                _snprintf(final_out_msg, 1022,
                        "事g记录序号:%d\n事g:%s\n日期:%.4hd-%2hd-%2hd\n旉:%.2hd:%.2hd:%.2hd\n事gcd:%s\n事g来源:%s\n事gID:(%u)\n用户:%s/%s\n计算?%s\n描述:\n%s\n\n\n",
      event_record,
      el->event_name,
      event_time->tm_year + 1900,
      event_time->tm_mon + 1,
      event_time->tm_mday,
      event_time->tm_hour,
      event_time->tm_min,
      event_time->tm_sec, 
      
                        event_category,
      event_sourcename,
                       
                        (WORD)el->er->EventID,
                        event_el_domain,
                        event_el_user,
                       
      event_computername,
                        event_descriptive_msg != NULL?event_descriptive_msg:el_string); 
              
         fprintf(fp, "%s\n", final_out_msg); 
            }

            if(event_descriptive_msg != NULL)
                LocalFree(event_descriptive_msg);

            // Changing the point to the er
            read -= el->er->Length;
            el->er = (EVENTLOGRECORD *)((LPBYTE) el->er + el->er->Length);
   event_record++;
        }  

        // Setting er to the beginning of the buffer  
        el->er = (EVENTLOGRECORD *)&mbuffer;
  
    }
}
//////////////////////////////////////////////////////////////////////

void CRead_EventDlg::Save_Application()
{
 //从列表中保存应用日志
 if(!fp)
 {
  MessageBox("怎么没打开?","警告!",MB_OK|MB_ICONEXCLAMATION);
  exit(1);
 }
 else
 {
  MessageBox("应用日志文g打开了!","信息!",MB_OK|MB_ICONINFORMATION);
 }

 fprintf(fp, "\n\n***********应用日志列表***********\n\n\n");
 Save_List(1,event_record);

 fclose(fp);
 if(fclose(fp))
 {
  MessageBox("应用日志文g关闭了!","信息!",MB_OK|MB_ICONINFORMATION); 
 }
 else
 {
  MessageBox("q开着呢了Q,抓紧兛_?","错误!",MB_OK|MB_ICONSTOP);  

 }

}
//////////////////////////////////////////////////////////////////

void CRead_EventDlg::Save_Security()
{
 //从列表中保存安全日志
 if(!fp)
 {
  MessageBox("怎么没打开?","警告!",MB_OK|MB_ICONEXCLAMATION);

  exit(1);
 }
 else
 {
  
  MessageBox("安全日志文g打开?","信息!",MB_OK|MB_ICONINFORMATION);

 }


 fprintf(fp, "\n\n***********安全日志列表***********\n\n\n"); 

 Save_List(1,event_record);

 fclose(fp);
 if(fclose(fp))
 {
  MessageBox("安全日志文g关闭?","信息!",MB_OK|MB_ICONINFORMATION);
 }
 else
 {
  MessageBox("q开着呢了Q,抓紧兛_?","错误!",MB_OK|MB_ICONSTOP);
 }

}
////////////////////////////////////////////////////
void CRead_EventDlg::Save_System()
{
 //从列表中保存pȝ日志
 if(!fp)
 {
  MessageBox("怎么没打开?","警告!",MB_OK|MB_ICONEXCLAMATION);
  exit(1);
 }
 else
 {
  MessageBox("pȝ日志文g打开?","信息!",MB_OK|MB_ICONINFORMATION);
 }
 fprintf(fp, "\n\n***********pȝ日志列表***********\n\n\n"); 

 Save_List(1,event_record);

 fclose(fp);
 if(fclose(fp))
 {
  MessageBox("pȝ日志文g关闭?","信息!",MB_OK|MB_ICONINFORMATION);  
 }
 else
 {
  MessageBox("q开着呢了Q,抓紧兛_?","错误!",MB_OK|MB_ICONSTOP);
 }

}
/////////////////////////////////////////////////////////////////////////
void CRead_EventDlg::Save_Single_Record(int single_record)
{
 //从列表中保存单个记录
 if(!fp)
 {
  MessageBox("怎么没打开?","警告!",MB_OK|MB_ICONEXCLAMATION);  
  exit(1);
 }
 else
 {
  MessageBox("一个记录正要保存了!","信息!",MB_OK|MB_ICONINFORMATION);  
 }

 fprintf(fp, "\n\n***********W?d记录***********\n\n\n",nItem);
 
 Save_List(single_record,single_record);


 fclose(fp);
 if(fclose(fp))
 {
  MessageBox("日志记录关闭?","信息!",MB_OK|MB_ICONINFORMATION); 
 }
 else
 {
  MessageBox("q有一个记录开着?","错误!",MB_OK|MB_ICONSTOP);  
 }
}
/////////////////////////////////////////////////////////////////////
void CRead_EventDlg::Save_List(int record_initialize, int record_num)
{
 //保存列表记录
 CString save_event_record;
 CString save_event_category;
 CString save_event_sourcename;
 CString save_event_date;
 CString save_event_time;
 CString save_event_id;
 CString save_event_user;
 CString save_event_computername;
 CString save_event_descriptive_msg;
 CString save_event_name;
 
 switch(istype)
 {
 case 1:
  save_event_name="Security";
  break;
 case 2:
  save_event_name="System";
  break;
 case 3:
  save_event_name="Application";
  break;
 default:
  return;
   }

 for(int i=record_initialize-1;i<record_num;i++)
 {
  save_event_record=m_mm_host_ListCtrl.GetItemText(i,0);
  save_event_category=m_mm_host_ListCtrl.GetItemText(i,1);
  save_event_sourcename=m_mm_host_ListCtrl.GetItemText(i,2);
  save_event_date=m_mm_host_ListCtrl.GetItemText(i,3);
  save_event_time=m_mm_host_ListCtrl.GetItemText(i,4);
  save_event_id=m_mm_host_ListCtrl.GetItemText(i,5);
  save_event_user=m_mm_host_ListCtrl.GetItemText(i,6);
  save_event_computername=m_mm_host_ListCtrl.GetItemText(i,7);
  save_event_descriptive_msg=m_mm_host_ListCtrl.GetItemText(i,8);
  fprintf(fp, "事g记录序号:%s\n事g:%s\n日期:%s\n旉:%s\ncd:%s\n事g来源:%s\n事gID:%s\n用户:%s\n计算?%s\n描述:\n%s\n\n\n\n",
    save_event_record,
    save_event_name,
    save_event_date,
    save_event_time,
    save_event_category,
    save_event_sourcename,
    save_event_id,
    save_event_user,
    save_event_computername,
    save_event_descriptive_msg);

 }

}
////////////////////////////////////////////////////
void CRead_EventDlg::Save_Hard_Application()
{
 //从系l中保存应用日志
 if(!fp)
 {
  MessageBox("怎么没打开?","警告!",MB_OK|MB_ICONEXCLAMATION);
  exit(1);
 }
 else
 {
  MessageBox("应用日志文g打开了!","信息!",MB_OK|MB_ICONINFORMATION);
 }

 fprintf(fp, "\n\n***********应用日志列表***********\n\n\n");
 
 Start_EL("application",el);
 Save_event(el, 1);
 
 fclose(fp);
 if(fclose(fp))
 {
  MessageBox("应用日志文g关闭了!","信息!",MB_OK|MB_ICONINFORMATION); 
 }
 else
 {
  MessageBox("q开着呢了Q,抓紧兛_?","错误!",MB_OK|MB_ICONSTOP);  

 }

}
////////////////////////////////////////////////////////////////////


void CRead_EventDlg::Save_Hard_Security()
{
 //从系l中保存安全记录
 if(!fp)
 {
  MessageBox("怎么没打开?","警告!",MB_OK|MB_ICONEXCLAMATION);

  exit(1);
 }
 else
 {
  
  MessageBox("安全日志文g打开?","信息!",MB_OK|MB_ICONINFORMATION);

 }


 fprintf(fp, "\n\n***********安全日志列表***********\n\n\n"); 

 Start_EL("Security",el);
 Save_event(el, 1);

 fclose(fp);
 if(fclose(fp))
 {
  MessageBox("安全日志文g关闭?","信息!",MB_OK|MB_ICONINFORMATION);
 }
 else
 {
  MessageBox("q开着呢了Q,抓紧兛_?","错误!",MB_OK|MB_ICONSTOP);
 }
}
//////////////////////////////////////////////////////////////
void CRead_EventDlg::Save_Hard_System()
{
 //从系l中保存pȝ日志
 if(!fp)
 {
  MessageBox("怎么没打开?","警告!",MB_OK|MB_ICONEXCLAMATION);
  exit(1);
 }
 else
 {
  MessageBox("pȝ日志文g打开?","信息!",MB_OK|MB_ICONINFORMATION);
 }

 fprintf(fp, "\n\n***********pȝ日志列表***********\n\n\n"); 

 Start_EL("System",el);
 Save_event(el, 1);

 fclose(fp);
 if(fclose(fp))
 {
  MessageBox("pȝ日志文g关闭?","信息!",MB_OK|MB_ICONINFORMATION);  
 }
 else
 {
  MessageBox("q开着呢了Q,抓紧兛_?","错误!",MB_OK|MB_ICONSTOP);
 }

}
/////////////////////////////////////////////////////////////////

void CRead_EventDlg::OnSave_Hard()
{
 //从系l中保存记录的响应函?br /> // TODO: Add your control notification handler code here
 switch(istype)
 {
 case 1:
  break;
 case 2:
  break;
 case 3:
  break;
 default:
  MessageBox("请选择日志cd","警告!",MB_OK|MB_ICONEXCLAMATION);
  return;
   }

 CString sFileName;
 sFileName.Format("");

 CFileDialog dlg(FALSE, "txt", sFileName,
     OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,
     "文本文g(*.txt)|*.txt|文本文g(*.doc)|*.doc||", this); 

 /////////////////////////////////////////
 //从系l中保存整个日志
 if(IDCANCEL==(MessageBox("您确定要从系l中保存日志文gQ?,"提示!",MB_OKCANCEL|MB_ICONQUESTION)))
 {
  nItem=0;
  return;
 }

 if (dlg.DoModal() == IDOK)
 {
  dlg.m_ofn.lpstrTitle = _T("从系l中保存日志文g");
  CString fileName = dlg.GetPathName();

  fp = fopen(fileName,"w");
  switch(istype)
  {
  case 1:
   Save_Hard_Security();
   break;
  case 2:
   Save_Hard_System();
   break;
  case 3:
   Save_Hard_Application();
   break;
  default:
   MessageBox("请选择日志cd","警告!",MB_OK|MB_ICONEXCLAMATION);
   return;
    }
 }
 nItem=0;
 
}
/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
// DescriptionDiaLog.cpp : implementation file
//

#include "stdafx.h"
#include "Read_Event.h"
#include "DescriptionDiaLog.h"
#include "Read_EventDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

extern int istype;
extern int nItem;
extern int event_record;
extern CString m_mm_host_state;
extern os_el el[1];
extern BOOL issub;
BOOL isShow=FALSE;
/////////////////////////////////////////////////////////////////////////////
// DescriptionDiaLog dialog


DescriptionDiaLog::DescriptionDiaLog(CWnd* pParent /*=NULL*/)
 : CDialog(DescriptionDiaLog::IDD, pParent)
{
 //{{AFX_DATA_INIT(DescriptionDiaLog)
 m_sub_event_computername = _T("");
 //}}AFX_DATA_INIT
}


void DescriptionDiaLog::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);
 //{{AFX_DATA_MAP(DescriptionDiaLog)
 DDX_Text(pDX, IDC_SBUEVENTCOMPUTERNAME, m_sub_event_computername);
 //}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(DescriptionDiaLog, CDialog)
 //{{AFX_MSG_MAP(DescriptionDiaLog)
 ON_BN_CLICKED(IDC_SHOW, OnShow)
 ON_BN_CLICKED(IDC_PRESHOW, OnPreshow)
 ON_BN_CLICKED(IDC_NEXTSHOW, OnNextshow)
 //}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// DescriptionDiaLog message handlers

BOOL DescriptionDiaLog::OnInitDialog()
{
 CDialog::OnInitDialog();
 
 // TODO: Add extra initialization here
 issub=true;
 return TRUE;  // return TRUE unless you set the focus to a control
               // EXCEPTION: OCX Property Pages should return FALSE
}
//////////////////////////////////////////////////////////
void DescriptionDiaLog::Sub_Prepare()
{

 char *m_sub_cTemp;
 switch(istype)
 {
 case 1:
  m_sub_cTemp ="Security";
  break;
 case 2:
  m_sub_cTemp ="System";
  break;
 default:
  m_sub_cTemp ="application";
 }
 Sub_Show(nItem);
}
///////////////////////////////////////////////////////
void DescriptionDiaLog::OnShow()
{
 //昄记录内容
 // TODO: Add your control notification handler code here
 //判断是否有记录被选中
 if (nItem==0)
 {
  MessageBox("错了!","错误!",MB_OK|MB_ICONSTOP);
  CDialog::OnOK();
 }
 //如果是选中的是列表中第一条记录,向前观察按钮失效
 if(nItem==1)
 {
  GetDlgItem(IDC_PRESHOW)->EnableWindow(FALSE);
  GetDlgItem(IDC_NEXTSHOW)->EnableWindow(TRUE);
 }
 //如果是选中的是列表中最后一条记录,向后观察按钮失效
 if(nItem==event_record)
 {
  GetDlgItem(IDC_PRESHOW)->EnableWindow(TRUE);
  GetDlgItem(IDC_NEXTSHOW)->EnableWindow(FALSE);
 }
 Sub_Prepare();
 isShow=TRUE;
}
///////////////////////////////////////////////////////////
void DescriptionDiaLog::OnPreshow()

 //向前观察按钮响应函数
 // TODO: Add your control notification handler code here
 if (!isShow)
 {
  MessageBox("请回去选择记录!","警告!",MB_OK|MB_ICONEXCLAMATION);
  CDialog::OnOK();
 }
 nItem--;
 //如果是选中的是列表中第一条记录,向前观察按钮失效
 if(nItem==1)
 {
  GetDlgItem(IDC_PRESHOW)->EnableWindow(FALSE);
 }
 GetDlgItem(IDC_NEXTSHOW)->EnableWindow(TRUE);
 Sub_Prepare();

}
//////////////////////////////////////////////////////////////////
void DescriptionDiaLog::OnNextshow()

 //向后观察按钮
 // TODO: Add your control notification handler code here
 nItem++;
 //如果是选中的是列表中最后一条记录,向后观察按钮失效
 if(nItem==event_record)
 {
  GetDlgItem(IDC_NEXTSHOW)->EnableWindow(FALSE);
 }
 GetDlgItem(IDC_PRESHOW)->EnableWindow(TRUE);
 Sub_Prepare();

}
//////////////////////////////////////////////////////////////

void DescriptionDiaLog::OnOK()
{
 // TODO: Add extra validation here
 nItem=0;
 CDialog::OnOK();
}

void DescriptionDiaLog::OnCancel()
{
 // TODO: Add extra cleanup here
 nItem=0;
 CDialog::OnCancel();
}
////////////////////////////////////////////////////////////////
void DescriptionDiaLog::Sub_Show(int sub_nItem)
{
 //昄详细记录按钮的响应函?br /> CRead_EventDlg* dlg = (CRead_EventDlg *)AfxGetMainWnd();
 CString sub_event;

 //事g序列
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,0);
 GetDlgItem(IDC_SBUEVENTRECORD)->SetWindowText(sub_event);
 //事gcd
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,1);
 GetDlgItem(IDC_SBUEVENTCATEGORY)->SetWindowText(sub_event);
 //事g来源
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,2);
 GetDlgItem(IDC_SUBEVENTSOURCENAME)->SetWindowText(sub_event);
 //事g日期
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,3);
 GetDlgItem(IDC_SUBEVENTDATA)->SetWindowText(sub_event);
 //事g旉
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,4);
 GetDlgItem(IDC_SBUEVENTTIME)->SetWindowText(sub_event);
 //事gID
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,5);
 GetDlgItem(IDC_SBUEVENTID)->SetWindowText(sub_event);
 //用户
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,6);
 GetDlgItem(IDC_SBUEVENTUSERNAME)->SetWindowText(sub_event);
 //计算?br /> sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,7);
 GetDlgItem(IDC_SBUEVENTCOMPUTERNAME)->SetWindowText(sub_event);
 //详细描述
 sub_event=dlg->m_mm_host_ListCtrl.GetItemText(sub_nItem-1,8);
 GetDlgItem(IDC_EDIT_SBUEVENTMESSAGE)->SetWindowText(sub_event);
 
 switch(istype)
 {
 case 1:
  sub_event="Security";
  break;
 case 2:
  sub_event="System";
  break;
 case 3:
  sub_event="Application";
  break;
 default:
  MessageBox("请选择日志cd!","警告!",MB_OK|MB_ICONEXCLAMATION);
  return;
   }
 //事g
 GetDlgItem(IDC_SUBEVENT)->SetWindowText(sub_event);

}
/////////////////////////////////////////////////////////////////



啤酒 2006-09-07 14:37 发表评论
]]>
文gcd操作http://www.shnenglu.com/beer/archive/2006/09/06/12076.html啤酒啤酒Wed, 06 Sep 2006 02:08:00 GMThttp://www.shnenglu.com/beer/archive/2006/09/06/12076.htmlhttp://www.shnenglu.com/beer/comments/12076.htmlhttp://www.shnenglu.com/beer/archive/2006/09/06/12076.html#Feedback0http://www.shnenglu.com/beer/comments/commentRss/12076.htmlhttp://www.shnenglu.com/beer/services/trackbacks/12076.html取得文g?br />{
      CString
      FilePathName;
      CFileDialog dlg(TRUE);///TRUE为OPEN对话框,FALSE为SAVE AS对话?br />      if(dlg.DoModal()==IDOK)
      FilePathName=dlg.GetPathName();
}
相关信息QCFileDialog 用于取文件名的几个成员函敎ͼ
假如选择的文件是C:\WINDOWS\TEST.EXE
?
   (1)GetPathName();取文件名全称Q包括完整\径。取回C:\WINDOWS\TEST.EXE
   (2)GetFileTitle();取回TEST
   (3)GetFileName();取文件全名:TEST.EXE
   (4)GetFileExt();取扩展名EXE
 
打开文g
CFile file("C:\HELLO.TXT",CFile::modeRead);///只读方式打开
///CFile::modeRead可改?CFile::modeWrite(只写),CFile::modeReadWrite(d),CFile::modeCreate(新徏)
例子Q?br />{
    CFile file;
    file.Open("C:\HELLO.TXT",CFile::modeCreate|Cfile::modeWrite);
    ...
    ...
}
 
Ud文g指针
    file.Seek(100,CFile::begin);///从文件头开始往下移?00字节
    file.Seek(-50,CFile::end);///从文件末־上移?0字节
    file.Seek(-30,CFile::current);///从当前位|往上移?0字节
    file.SeekToBegin();///Ud文g?br />    file.SeekToEnd();///Ud文g?br />

对于CFileDialog 使用可参照下?/p>

:通用对话框的使用
    大家都遇到过CFileDialog文g对话框吧,它的参数让h头疼.下面解除大家的头?
    先在使用文g对话框的cȝcd义文件中加入对象定义CFileDialog m_MyOpenDialog(TRUE,"avi","*.avi")。随后,在需要用该对话框的地方加入以下语句Q?br />    m_MyOpenDialog.Domodal();
    可以预览所?avi文g.

    其调用规则ؓQ?br />    函数原型:
    CFileDialog(BOOL bOpenFileDialog,LPCTSTR lpszDefExt=NULL,LPCTSTR lpszFileName=NULL,DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPR OMPT,LPCTSTR lpszFilter=NULL,CWnd * pParentWnd
=NULL);
    参数说明:
    bOpenFileDialog:为TRUE或FALSE。TRUE为打开文gQFALSEZ存文件?br />    lpszDefExt     :为缺省的扩展名?br />    lpszFileName   :为显C在文g名组合框的编辑框的文件名Q一般可选NULL
    dwFlags        :为对话框风格Q一般ؓOFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,即隐藏只读选项和覆盖已有文件前提示?br />    LpszFilter     :Z拉列表枢中显C文件类型?br />    pParentWnd     :一般可选NULL?br />    例如Q在文gcd列表框的~辑框要昄“可执行文g(*.exe)”,而在它的下拉列表框中列出“视频文?*.avi)、All Files(*.*)”内容,则变量定义如下:CFileDialog m_MyOpenDialog(TRUE,"exe",NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,"可执行文?*.exe) | *.exe|视频文g(*.bat) | *.bat |All Files (*.*) | *.* ||",NULL);
    ?看看没有*.*后的||会是什么效?

关于Qfseek

fseek()函数有三个参?br />

W一个是文g的指?br />

W二个是偏移量?也就是指针移动的字符敊W?

   //q个参数必须是Lcd

   //如果是负敊W?表示指针反向UdQ向文g头的方向Q?br />

W三个是偏移量的相对开始位|?br />
0  表示从文件开始处  偏移 L

1  表示从当前位|  ?偏移 L

2  表示从文件末  ?偏移 L  //只能是负C  也就是只能前向移?br />fseek
Moves the file pointer to a specified location.

int fseek(
   FILE *stream,
   long offset,
   int origin
);
Parameters
stream
Pointer to FILE structure.
offset
Number of bytes from origin.
origin
Initial position.
Return Value
If successful, fseek returns 0. Otherwise, it returns a nonzero value. On devices incapable of seeking, the return value is undefined.

Remarks
The fseek function moves the file pointer (if any) associated with stream to a new location that is offset bytes from origin. The next operation on the stream takes place at the new location. On a stream open for update, the next operation can be either a read or a write. The argument origin must be one of the following constants, defined in STDIO.H:

SEEK_CUR
Current position of file pointer.
SEEK_END
End of file.
SEEK_SET
Beginning of file.

再{一片文章:

c中的文g操作
1
C 的文件操?/font>/TD>
 
文g

文g的基本概?
  所谓“文件”是指一l相x据的有序集合。 这个数据集有一个名Uͼ叫做文g名。 实际上在前面的各章中我们已l多ơ用了文gQ例如源E序文g、目标文件、可执行文g、库文g (头文?{。文仉常是驻留在外部介质(如磁盘等)上的Q 在使用时才调入内存中来。从不同的角度可Ҏ件作不同的分cR从用户的角度看Q文件可分ؓ普通文件和讑֤文g两种?

  普通文件是指驻留在盘或其它外部介质上的一个有序数据集Q可以是源文件、目标文件、可执行E序Q 也可以是一l待输入处理的原始数据,或者是一l输出的l果。对于源文g、目标文件、 可执行E序可以UCE序文gQ对输入输出数据可称作数据文件?

  讑֤文g是指与主机相联的各种外部讑֤Q如昄器、打印机、键盘等。在操作pȝ中,把外部设备也看作是一个文件来q行理Q把它们的输入、输出等同于对磁盘文件的d写。 通常把显C器定义为标准输出文Ӟ 一般情况下在屏q上昄有关信息是向标准输出文件输出。如前面l常使用的printf,putchar 函数是q类输出。键盘通常被指定标准的输入文gQ 从键盘上输入就意味着从标准输入文件上输入数据。scanf,getchar函数属于这c输入。?

  从文件编码的方式来看Q文件可分ؓASCII码文件和二进制码文g两种?

  ASCII文g也称为文本文Ӟq种文g在磁盘中存放时每个字W对应一个字节,用于存放对应的ASCII码。例如,?678的存储Ş式ؓQ?
ASC码:  00110101 00110110 00110111 00111000
     ↓     ↓    ↓    ?
十进制码Q?     6    7    8 共占?个字节。ASCII码文件可在屏q上按字W显C, 例如源程序文件就是ASCII文gQ用DOS命oTYPE可显C文件的内容。 由于是按字W显C,因此能读懂文件内宏V?

  二进制文件是按二q制的编码方式来存放文g的。 例如, ?678的存储Ş式ؓQ?0010110 00101110只占二个字节。二q制文g虽然也可在屏q上昄Q 但其内Ҏ法读懂。Cpȝ在处理这些文件时Qƈ不区分类型,都看成是字符,按字节进行处理。 输入输出字W流的开始和l束只由E序控制而不受物理符?如回车符)的控制。 因此也把这U文件称作“流式文件”?

  本章讨论式文g的打开、关闭、读、写、 定位等各种操作。文件指针在Q语a中用一个指针变量指向一个文Ӟ q个指针UCؓ文g指针。通过文g指针可对它所指的文gq行各种操作。 定义说明文件指针的一般Ş式ؓQ FILE* 指针变量标识W; 其中FILE应ؓ大写Q它实际上是ql定义的一个结构, 该结构中含有文g名、文件状态和文g当前位置{信息。 在~写源程序时不必兛_FILEl构的细节。例如:FILE *fpQ 表Cfp是指向FILEl构的指针变量,通过fp 卛_扑֭放某个文件信息的l构变量Q然后按l构变量提供的信息找到该文gQ 实施对文g的操作。习惯上也笼l地把fpUCؓ指向一个文件的指针。文件的打开与关闭文件在q行d操作之前要先打开Q用完毕要关闭。 所谓打开文gQ实际上是徏立文件的各种有关信息Q ƈ使文件指针指向该文gQ以便进行其它操作。关闭文件则断开指针与文件之间的联系Q也q止再对该文gq行操作?

  在E语言中,文g操作都是由库函数来完成的。 在本章内将介绍主要的文件操作函数?

文g打开函数fope?

  fopen函数用来打开一个文Ӟ其调用的一般Ş式ؓQ 文件指针名=fopen(文g名,使用文g方式) 其中Q“文件指针名”必L被说明ؓFILE cd的指针变量,“文件名”是被打开文g的文件名。 “用文件方式”是指文件的cd和操作要求。“文件名”是字符串常量或字符串数l。例如: 
FILE *fpQ?
fp=("file a","r");
其意义是在当前目录下打开文gfile aQ 只允许q行“读”操作,qfp指向该文件?
 
 
 
 
2
C 的文件操?/font>/TD>
 
又如Q?
FILE *fphzk
fphzk=("c:\\hzk16',"rb")
其意义是打开C驱动器磁盘的根目录下的文件hzk16Q 这是一个二q制文gQ只允许按二q制方式q行L作。两个反斜线“\\ ”中的第一个表C{义字W,W二个表C根目录。用文件的方式共有12U,下面l出了它们的W号和意义。?
文g使用方式        意 义
“rt”      只读打开一个文本文Ӟ只允许读数据 
“wt”      只写打开或徏立一个文本文Ӟ只允许写数据
“at”      q加打开一个文本文Ӟq在文g末尾写数?
“rb”      只读打开一个二q制文gQ只允许L?
“wb”       只写打开或徏立一个二q制文gQ只允许写数?
“ab”       q加打开一个二q制文gQƈ在文件末ֆ数据
“rt+”      d打开一个文本文Ӟ允许d?
“wt+”      d打开或徏立一个文本文Ӟ允许d
“at+”      d打开一个文本文Ӟ允许读,或在文g末追加数 ?
“rb+”      d打开一个二q制文gQ允许读和写 
“wb+”      d打开或徏立一个二q制文gQ允许读和写
“ab+”      d打开一个二q制文gQ允许读Q或在文件末q加数据

对于文g使用方式有以下几点说明:
1. 文g使用方式由r,w,a,t,bQ?六个字符拼成Q各字符的含义是Q?
r(read): ?
w(write): ?
a(append): q加
t(text): 文本文gQ可省略不写
b(banary): 二进制文?
+: d?

2. 凡用“r”打开一个文件时Q该文g必须已经存在Q 且只能从该文gd?

3. 用“w”打开的文件只能向该文件写入。 若打开的文件不存在Q则以指定的文g名徏立该文gQ若打开的文件已l存在,则将该文件删去,重徏一个新文g?

4. 若要向一个已存在的文件追加新的信息,只能用“a ”方式打开文g。但此时该文件必L存在的,否则会出错?

5. 在打开一个文件时Q如果出错,fopen返回一个空指针值NULL。在E序中可以用q一信息来判别是否完成打开文g的工作,q作相应的处理。因此常用以下程序段打开文gQ?
if((fp=fopen("c:\\hzk16","rb")==NULL)
{
printf("\nerror on open c:\\hzk16 file!");
getch();
exit(1);
}
  q段E序的意义是Q如果返回的指针为空Q表CZ能打开C盘根目录下的hzk16文gQ则l出提示信息“error on open c:\ hzk16file!”,下一行getch()的功能是从键盘输入一个字W,但不在屏q上昄。在q里Q该行的作用是等待, 只有当用户从键盘敲Q一键时Q程序才l箋执行Q 因此用户可利用q个{待旉阅读出错提示。敲键后执行exit(1)退出程序?

6. 把一个文本文件读入内存时Q要ASCII码{换成二进制码Q 而把文g以文本方式写入磁盘时Q也要把二进制码转换成ASCII码,因此文本文g的读写要p较多的{换时间。对二进制文件的d不存在这U{换?

7. 标准输入文g(键盘)Q标准输出文?昄器?Q标准出错输?出错信息)是由pȝ打开的,可直接用。文件关闭函敎ͽclose文件一旦用完毕,应用关闭文g函数把文件关闭, 以避免文件的数据丢失{错误?

fclose函数

调用的一般Ş式是Q fclose(文g指针)Q 例如:
fclose(fp); 正常完成关闭文g操作Ӟfclose函数q回gؓ0。如q回非零值则表示有错误发生。文件的dҎ件的d写是最常用的文件操作。?

在E语言中提供了多种文gd的函敎ͼ 
·字符d函数 Qfgetc和fputc
·字符串读写函敎ͼfgets和fputs
·数据块读写函敎ͼfreed和fwrite
·格式化读写函敎ͼfscanf和fprinf

  下面分别予以介绍。用以上函数都要求包含头文件stdio.h。字W读写函敎ͽgetc和fputc字符d函数是以字符(字节)为单位的d函数。 每ơ可从文件读出或向文件写入一个字W?
 
 
 
 
3
C 的文件操?/font>/TD>
 

一、读字符函数fgetc

  fgetc函数的功能是从指定的文g中读一个字W,函数调用的Ş式ؓQ 字W变?fgetc(文g指针)Q 例如:ch=fgetc(fp);其意义是从打开的文件fp中读取一个字Wƈ送入ch中?

  对于fgetc函数的用有以下几点说明Q?
1. 在fgetc函数调用中,d的文件必L以读或读写方式打开的?

2. d字符的结果也可以不向字符变量赋|例如Qfgetc(fp);但是d的字W不能保存?

3. 在文件内部有一个位|指针。用来指向文件的当前d字节。在文g打开Ӟ该指针L指向文g的第一个字节。用fgetc 函数后, 该位|指针将向后Ud一个字节。 因此可q箋多次使用fgetc函数Q读取多个字W。 应注意文g指针和文件内部的位置指针不是一回事。文件指针是指向整个文g的,dE序中定义说明,只要不重新赋|文g指针的值是不变的。文件内部的位置指针用以指示文g内部的当前读写位|,每读写一ơ,该指针均向后UdQ它不需在程序中定义说明Q而是ql自动设|的?

[?0.1]d文ge10-1.cQ在屏幕上输出?
#include
main()
{
FILE *fp;
char ch;
if((fp=fopen("e10_1.c","rt"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
ch=fgetc(fp);
while (ch!=EOF)
{
putchar(ch);
ch=fgetc(fp);
}
fclose(fp);
}
  本例E序的功能是从文件中逐个d字符Q在屏幕上显C。 程序定义了文g指针fp,以读文本文g方式打开文g“e10_1.c”, qfp指向该文件。如打开文g出错Q 给出提Cƈ退出程序。程序第12行先d一个字W,然后q入循环Q 只要读出的字符不是文gl束标志(每个文g末有一l束标志EOF)把该字W显C在屏幕上,再读入下一字符。每Mơ,文g内部的位|指针向后移动一个字W,文gl束Ӟ该指针指向EOF。执行本E序显C整个文件?

二、写字符函数fputc

  fputc函数的功能是把一个字W写入指定的文g中,函数调用的 Ş式ؓQ fputc(字符量,文g指针)Q 其中,待写入的字符量可以是字符帔R或变量,例如Qfputc('a',fp);其意义是把字Wa写入fp所指向的文件中?

  对于fputc函数的用也要说明几点:
1. 被写入的文g可以用、写、读写,q加方式打开Q用写或d方式打开一个已存在的文件时清除原有的文g内容Q写入字W从文g首开始。如需保留原有文g内容Q希望写入的字符以文件末开始存放,必须以追加方式打开文g。被写入的文件若不存在,则创文g?

2. 每写入一个字W,文g内部位置指针向后Ud一个字节?

3. fputc函数有一个返回|如写入成功则q回写入的字W, 否则q回一个EOF。可用此来判断写入是否成功?

[?0.2]从键盘输入一行字W,写入一个文Ӟ 再把该文件内容读出显C在屏幕上?
#include
main()
{
FILE *fp;
char ch;
if((fp=fopen("string","wt+"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
printf("input a string:\n");
ch=getchar();
while (ch!='\n')
{
fputc(ch,fp);
ch=getchar();
}
rewind(fp);
ch=fgetc(fp);
while(ch!=EOF)
{
putchar(ch);
ch=fgetc(fp);
}
printf("\n");
fclose(fp);
}
  E序中第6行以d文本文g方式打开文gstring。程序第13行从键盘d一个字W后q入循环Q当d字符不ؓ回RW时Q 则把该字符写入文g之中Q然后l从键盘d下一字符。 每输入一个字W,文g内部位置指针向后Ud一个字节。写入完毕, 该指针已指向文g末。如要把文g从头dQ须把指针移向文件头Q 程序第19行rewind函数用于把fp所指文件的内部位置指针Ud文g头。 第20?5行用于读出文件中的一行内宏V?

[?0.3]把命令行参数中的前一个文件名标识的文Ӟ 复制到后一个文件名标识的文件中Q 如命o行中只有一个文件名则把该文件写到标准输出文?昄?中?
 
 
 
 
4
C 的文件操?/font>/TD>
 
#include
main(int argc,char *argv[])
{
FILE *fp1,*fp2;
char ch;
if(argc==1)
{
printf("have not enter file name strike any key exit");
getch();
exit(0);
}
if((fp1=fopen(argv[1],"rt"))==NULL)
{
printf("Cannot open %s\n",argv[1]);
getch();
exit(1);
}
if(argc==2) fp2=stdout;
else if((fp2=fopen(argv[2],"wt+"))==NULL)
{
printf("Cannot open %s\n",argv[1]);
getch();
exit(1);
}
while((ch=fgetc(fp1))!=EOF)
fputc(ch,fp2);
fclose(fp1);
fclose(fp2);
}
  本程序ؓ带参的main函数。程序中定义了两个文件指针 fp1 和fp2Q分别指向命令行参数中给出的文g。如命o行参C没有l出文g名,则给出提CZ息。程序第18行表C如果只l出一个文件名Q则使fp2指向标准输出文g(xC器)。程序第25行至28行用循环语句逐个d文g1中的字符再送到文g2中。再ơ运行时Q给Z一个文件名(׃10.2所建立的文?Q 故输出l标准输出文件stdoutQ即在显C器上显C文件内宏V第三次q行Q给Z二个文g名,因此把string中的内容dQ写入到OK之中。可用DOS命otype昄OK的内容:字符串读写函敎ͽgets和fputs

一、读字符串函数fgets函数的功能是从指定的文g中读一个字W串到字W数l中Q函数调用的形式为: fgets(字符数组名,nQ文件指?Q 其中的n是一个正整数。表CZ文g中读出的字符串不过 n-1个字W。在d的最后一个字W后加上串结束标?\0'。例如:fgets(str,n,fp);的意义是从fp所指的文g中读出n-1个字W送入字符数组str中?
[?0.4]从e10_1.c文g中读入一个含10个字W的字符丌Ӏ?
#include
main()
{
FILE *fp;
char str[11];
if((fp=fopen("e10_1.c","rt"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
fgets(str,11,fp);
printf("%s",str);
fclose(fp);
}
  本例定义了一个字W数lstr?1个字节,在以L本文件方式打开文ge101.c后,从中d10个字W送入str数组Q在数组最后一个单元内加?\0'Q然后在屏幕上显C出str数组。输出的十个字符正是?0.1E序的前十个字符?

  对fgets函数有两点说明:
1. 在读出n-1个字W之前,如遇C换行W或EOFQ则dl束?
2. fgets函数也有q回|其返回值是字符数组的首地址?

二、写字符串函数fputs

fputs函数的功能是向指定的文g写入一个字W串Q其调用形式为: fputs(字符Ԍ文g指针) 其中字符串可以是字符串常量,也可以是字符数组名, 或指针 变量,例如Q?
fputs(“abcd“,fp)Q?
其意义是把字W串“abcd”写入fp所指的文g之中。[?0.5]在例10.2中徏立的文gstring中追加一个字W串?
#include
main()
{
FILE *fp;
char ch,st[20];
if((fp=fopen("string","at+"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
printf("input a string:\n");
scanf("%s",st);
fputs(st,fp);
rewind(fp);
ch=fgetc(fp);
while(ch!=EOF)
{
putchar(ch);
ch=fgetc(fp);
}
printf("\n");
fclose(fp);
}
  本例要求在string文g末加写字W串Q因此,在程序第6行以q加d文本文g的方式打开文gstring 。 然后输入字W串Q ƈ用fputs函数把该串写入文件string。在E序15行用rewind函数把文件内部位|指针移到文仉。 再q入循环逐个昄当前文g中的全部内容?

数据块读写函敎ͽread和fwrit?

  Q语aq提供了用于整块数据的读写函数。 可用来d一l数据,如一个数l元素,一个结构变量的值等。读数据块函数调用的一般Ş式ؓQ fread(buffer,size,count,fp); 写数据块函数调用的一般Ş式ؓQ fwrite(buffer,size,count,fp); 其中buffer是一个指针,在fread函数中,它表C存放输入数据的首地址。在fwrite函数中,它表C存放输出数据的首地址。 size 表示数据块的字节数。count 表示要读写的数据块块数。fp 表示文g指针?
 
 
    
 
5
C 的文件操?/font>/TD>
 
例如Q?
fread(fa,4,5,fp); 其意义是从fp所指的文g中,每次?个字?一个实?送入实数lfa中,q箋?ơ,卌5个实数到fa中?
[?0.6]从键盘输入两个学生数据,写入一个文件中Q 再dq两个学生的数据昄在屏q上?
#include
struct stu
{
char name[10];
int num;
int age;
char addr[15];
}boya[2],boyb[2],*pp,*qq;
main()
{
FILE *fp;
char ch;
int i;
pp=boya;
qq=boyb;
if((fp=fopen("stu_list","wb+"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
printf("\ninput data\n");
for(i=0;i<2;i++,pp++)
scanf("%s%d%d%s",pp->name,&pp->num,&pp->age,pp->addr);
pp=boya;
fwrite(pp,sizeof(struct stu),2,fp);
rewind(fp);
fread(qq,sizeof(struct stu),2,fp);
printf("\n\nname\tnumber age addr\n");
for(i=0;i<2;i++,qq++)
printf("%s\t%5d%7d%s\n",qq->name,qq->num,qq->age,qq->addr);
fclose(fp);
}
  本例E序定义了一个结构stu,说明了两个结构数lboya和 boyb以及两个l构指针变量pp和qq。pp指向boya,qq指向boyb。程序第16行以d方式打开二进制文件“stu_list”,输入二个学生数据之后Q写入该文g中, 然后把文件内部位|指针移到文仉Q读Z块学生数据后Q在屏幕上显C?

格式化读写函敎ͽscanf和fprint?

fscanf函数Qfprintf函数与前面用的scanf和printf 函数的功能相|都是格式化读写函数。 两者的区别在于 fscanf 函数和fprintf函数的读写对象不是键盘和昄器,而是盘文g。这两个函数的调用格式ؓQ fscanf(文g指针Q格式字W串Q输入表?Q fprintf(文g指针Q格式字W串Q输?Q 例如:
fscanf(fp,"%d%s",&i,s);
fprintf(fp,"%d%c",j,ch); 
用fscanf和fprintf函数也可以完成例10.6的问题。修改后的程序如?0.7所C?
[?0.7]
#include
struct stu
{
char name[10];
int num;
int age;
char addr[15];
}boya[2],boyb[2],*pp,*qq;
main()
{
FILE *fp;
char ch;
int i;
pp=boya;
qq=boyb;
if((fp=fopen("stu_list","wb+"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
printf("\ninput data\n");
for(i=0;i<2;i++,pp++)
scanf("%s%d%d%s",pp->name,&pp->num,&pp->age,pp->addr);
pp=boya;
for(i=0;i<2;i++,pp++)
fprintf(fp,"%s %d %d %s\n",pp->name,pp->num,pp->age,pp->
addr);
rewind(fp);
for(i=0;i<2;i++,qq++)
fscanf(fp,"%s %d %d %s\n",qq->name,&qq->num,&qq->age,qq->addr);
printf("\n\nname\tnumber age addr\n");
qq=boyb;
for(i=0;i<2;i++,qq++)
printf("%s\t%5d %7d %s\n",qq->name,qq->num, qq->age,
qq->addr);
fclose(fp);
}
  与例10.6相比Q本E序中fscanf和fprintf函数每次只能d一个结构数l元素,因此采用了@环语句来d全部数组元素。 还要注意指针变量pp,qq׃循环改变了它们的|因此在程序的25?2行分别对它们重新赋予了数l的首地址?

文g的随?

  前面介绍的对文g的读写方式都是顺序读写, 卌写文件只能从头开始,序d各个数据。 但在实际问题中常要求只d文g中某一指定的部分。 ؓ了解册个问题可Ud文g内部的位|指针到需要读写的位置Q再q行dQ这U读写称为随写。 实现随写的关键是要按要求移动位|指针,q称为文件的定位。文件定位移动文件内部位|指针的函数主要有两个, ꐠrewind 函数和fseek函数?

  rewind函数前面已多ơ用过Q其调用形式为: rewind(文g指针)Q 它的功能是把文件内部的位置指针Ud文g首。 下面主要介l?
fseek函数?

  fseek函数用来Ud文g内部位置指针Q其调用形式为: fseek(文g指针Q位U量Qv始点)Q 其中:“文件指针”指向被Ud的文件。 “位U量”表C移动的字节敎ͼ要求位移量是long型数据,以便在文仉度大?4KB 时不会出错。当用常量表CZU量Ӟ要求加后~“L”。“v始点”表CZ何处开始计位U量Q规定的起始Ҏ三种Q文仉Q当前位|和文g?
 
 
    
 
6
C 的文件操?/font>/TD>
 
其表C方法如?0.2。?
起始点    表示W号    数字表示
—————————————————————————?
文g首    SEEK—SET    0
当前位置   SEEK—CUR    1
文g末尾   SEEK—END     2
例如Q?
fseek(fp,100L,0);其意义是把位|指针移到离文g?00个字节处。还要说明的是fseek函数一般用于二q制文g。在文本文g中由于要q行转换Q故往往计算的位|会出现错误。文件的随机d在移动位|指针之后, 卛_用前面介l的MU读写函数进行读写。由于一般是d一个数据据块,因此常用fread和fwrite函数。下面用例题来说明文件的随机d?

[?0.8]在学生文件stu list中读出第二个学生的数据?
#include
struct stu
{
char name[10];
int num;
int age;
char addr[15];
}boy,*qq;
main()
{
FILE *fp;
char ch;
int i=1;
qq=&boy;
if((fp=fopen("stu_list","rb"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
rewind(fp);
fseek(fp,i*sizeof(struct stu),0);
fread(qq,sizeof(struct stu),1,fp);
printf("\n\nname\tnumber age addr\n");
printf("%s\t%5d %7d %s\n",qq->name,qq->num,qq->age,
qq->addr);
}
  文gstu_list已由?0.6的程序徏立,本程序用随机d的方法读出第二个学生的数据。程序中定义boy为stucd变量Qqq为指向boy的指针。以Mq制文g方式打开文gQ程序第22行移动文件位|指针。其中的igؓ1Q表CZ文g头开始,Ud一个stucd的长度, 然后再读出的数据即ؓW二个学生的数据?

文g函?

Q语a中常用的文g函数有以下几个?
一、文件结束检函数feof函数调用格式Q feof(文g指针)Q?
功能Q判断文件是否处于文件结束位|,如文件结束,则返回gؓ1Q否则ؓ0?

二、读写文件出错检函数ferror函数调用格式Q ferror(文g指针)Q?
功能Q检查文件在用各U输入输出函数进行读写时是否出错。 如ferrorq回gؓ0表示未出错,否则表示有错?

三、文件出错标志和文gl束标志|?函数clearerr函数调用格式Q clearerr(文g指针); 
功能Q本函数用于清除出错标志和文件结束标志,使它们ؓ0倹{?

Q库文g

Q系l提供了丰富的系l文ӞUCؓ库文ӞC的库文g分ؓ两类Q一cL扩展名ؓ".h"的文ӞUCؓ头文Ӟ 在前面的包含命o中我们已多次使用q。在".h"文g中包含了帔R定义、 类型定义、宏定义、函数原型以及各U编译选择讄{信息。另一cL函数库,包括了各U函数的目标代码Q供用户在程序中调用。 通常在程序中调用一个库函数Ӟ要在调用之前包含该函数原型所在的".h" 文g?
在附录中l出了全部库函数?
ALLOC.H    说明内存理函数(分配、释攄)?
ASSERT.H    定义 assert调试宏?
BIOS.H     说明调用IBM—PC ROM BIOS子程序的各个函数?
CONIO.H    说明调用DOS控制台I/O子程序的各个函数?
CTYPE.H    包含有关字符分类及{换的名类信息(如 isalpha和toascii{??
DIR.H     包含有关目录和\径的l构、宏定义和函数?
DOS.H     定义和说明MSDOS?086调用的一些常量和函数?
ERRON.H    定义错误代码的助记符?
FCNTL.H    定义在与open库子E序q接时的W号帔R?
FLOAT.H    包含有关点q算的一些参数和函数?
GRAPHICS.H   说明有关囑Ş功能的各个函敎ͼ囑Ş错误代码的常量定义,正对不同驱动E序的各U颜色|及函数用到的一些特D结构?
IO.H      包含低I/O子程序的l构和说明?
LIMIT.H    包含各环境参数、编译时间限制、数的范围等信息?
MATH.H     说明数学q算函数Q还定了 HUGE VAL 宏, 说明了matherr和matherr子程序用到的Ҏl构?
MEM.H     说明一些内存操作函?其中大多C在STRING.H 中说??
PROCESS.H   说明q程理的各个函敎ͼspawn…和EXEC …函数的l构说明?
SETJMP.H    定义longjmp和setjmp函数用到的jmp bufcdQ 说明这两个函数?
SHARE.H    定义文g׃n函数的参数?
SIGNAL.H    定义SIG[ZZ(Z] [ZZ)]IGN和SIG[ZZ(Z] [ZZ)]DFL帔RQ说明rajse和signal两个函数?
STDARG.H    定义d数参数表的宏?如vprintf,vscarf函数)?
STDDEF.H    定义一些公共数据类型和宏?
STDIO.H    定义Kernighan和Ritchie在Unix System V 中定义的标准和扩展的cd和宏。还定义标准I/O 预定义流Qstdin,stdout和stderrQ说明 I/O子E序?
STDLIB.H    说明一些常用的子程序:转换子程序、搜? 排序子程序等?
STRING.H    说明一些串操作和内存操作函数?
SYS\STAT.H   定义在打开和创建文件时用到的一些符号常量?
SYS\TYPES.H  说明ftime函数和timebl构?
SYS\TIME.H   定义旉的类型time[ZZ(Z] [ZZ)]t?
TIME.H     定义旉转换子程序asctime、localtime和gmtime的结构,ctime、 difftime、 gmtime、 localtime和stime用到的类型,q提供这些函数的原型?
VALUE.H    定义一些重要常量, 包括依赖于机器硬件的和ؓ与Unix System V相兼容而说明的一些常量,包括点和双_ֺ值的范围?/td>


啤酒 2006-09-06 10:08 发表评论
]]>
þ޾ƷVA| ȾþùþƷ | Ʒþþþþ12| ޾ƷۺϾþһ| þþþó˾Ʒ| 뾫Ʒþþ| ҹþþӰԺ| þþþþƷAV| ҹþAAAAAëƬѿ| 99þù޸ۿ2024| ƷþþþӰ| ޾Ʒھþ| 99þó˹Ʒ| þ99Ʒþþþþhb| ٸ߳ҽоþþþþ| ޹Ʒһþhs| AVþ| þùƷһ| þþƷ˘AV| ƷþþþĻձ| ݺɫþ| 99鶹þþùƷ| Ʒһþ㽶߿| 91Ʒþþþþ91 | þþþһƷ | һɫۺþ| 鶹˾þþƷ | 2021˾Ʒþ| þۺav| ŷþۺ㽶| þþŷղAV| ۲˾þþƷٸAV| ɫۺϺϾþۺӿ| Ʒ׾þAAAƬ69| ޾Ʒھþ| Ʒþþþþ| ƷŷþþþӰ| ȫɫƴɫƬѾþþ | žžþþƷר| Ĺ˾Ʒþ޾ƷA뾫Ʒ | þþþAVվ|