分中国在国际秩序的作用用

十八届三中全会解读之三——建设开放有序的市场体系 发挥市场配置资源决定性作用(上) 考试答案 80分_中华文本库
第1页/共2页
一、单选 ( 共 4 小题,总分: 40 分)
1. 目前我国的GDP占全球()
2. 根据本讲,服务市场不包括()
A.教育市场
B.旅游市场
C.要素市场
D.文化市场
3. 根据本讲,从市场空间看,市场的分类不包括()
A.期货交易市场和现货交易市场
B.国际市场和国内市场
C.区域市场和全球市场
D.农村市场和城市市场
4. 根据本讲,政府配置资源只要是根据()
A.价格机制
B.供求关系
C.市场干预
D.行政手段
二、多选 ( 共 2 小题,总分: 20 分)
1. 从市场交易的对象来看,可以将市场分为()
A.商品市场
第1页/共2页
寻找更多 ""PHP群:&Hbuiler+MUI群:&站长QQ:
提供主流cms教程
提供数据库教程和设计
提供各种常见网页js代码
提供常用的JS特效代码及在线演示
提供jQuery插件教程及插件下载
提供服务器常见问题及教程
提供站长技术、站长资讯等内容
提供常用开发手册和开发工具
您现在的位置:& >
功能强大jquery动画分类和有序的内容过滤和排序插件MixItUp
MixItUp提供了美丽的动画分类和有序的内容过滤和排序。它使用了 CSS3 的变换(Transition)属性来实现筛选动画效果。此插件的定制性也比较高,可设置变换效果、速度等等。
下载资源:151 次
下载积分:0 分
转载请注明(B5教程网)原文链接:
网友评论:87分十八届三中全会解读之三――建设开放有序的市场体系 发挥市场配置资源决定性作用(上)_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
87分十八届三中全会解读之三――建设开放有序的市场体系 发挥市场配置资源决定性作用(上)
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
你可能喜欢以下试题来自:
单项选择题以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:
  main( )
  { int n,k;
   float score,sum,ave;
   sum=0.0;
   for(n=1;n<=10;n++)
   { for(k=1;k<=4;k++)
    { scanf("%f",&score);sum+=score;}
    ave=sum/4.0;
    printf("NO%d:%f\n",n,ave);
  上述程序运行后结果不正确,调试中发现有D条语句出现在程序中的位置不正确。这条语句是(
A.sum=0.0;B.sum+=score;C.ave=sum/4.0;D.printf("NO%d:%f\n",n,ave);
为您推荐的考试题库
你可能感兴趣的试题
1A.p->nextB.pC.sD.s->next2A.4,3,7B.3,4,7C.52,7D.2,5,73A.B.C.D.4A.virtual void vf()=0;B.void vf(int)=0;C.virtual int vf(int);D.virtual void vf(int) {}5A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA
热门相关试卷
最新相关试卷当前位置:
遍历和查找外部程序 Tree-View 中的项目
遍历和查找外部程序 Tree-View 中的项目
发布日期: 10:50
浏览次数:7987次
标  签:windows
文章评分:5.0
操  作:
称号:未设置简介:...
文章概要:
《金山词霸2002》中的附录收集了很多古诗,有时为了寻找一篇古诗,得找很久很久(俺文科很差)。观察其附录的结构,发现是个Tree-View控件,如果能查找里面的项目该有多好,可这个功能软件本身却并没有提供(不知道现在最新的版本是否已经提供了这个功能,如果没有,赶快加上吧,顺便奖励俺一套该产品的最新版,哈哈)……问题出来了:我们要编写一个程序,让她在外部程序中的Tree-View控件里,按用户指定的项目名称顺序查找其中的项目。
  要查找首先得遍历,连范围都确定不好何谈查找?所以本篇分两部分进行讲解:第一部分解决遍历的问题;第二部分解决查找指定项目的问题。
《金山词霸2002》中的附录收集了很多古诗,有时为了寻找一篇古诗,得找很久很久(俺文科很差)。观察其附录的结构,发现是个Tree-View控件,如果能查找里面的项目该有多好,可这个功能软件本身却并没有提供(不知道现在最新的版本是否已经提供了这个功能,如果没有,赶快加上吧,顺便奖励俺一套该产品的最新版,哈哈)……问题出来了:我们要编写一个程序,让她在外部程序中的Tree-View控件里,按用户指定的项目名称顺序查找其中的项目。
要查找首先得遍历,连范围都确定不好何谈查找?所以本篇分两部分进行讲解:第一部分解决遍历的问题;第二部分解决查找指定项目的问题。
第一部分:遍历外部程序Tree-View中的项目
一:程序说明:
如图一所示Tree-View控件的典型结构图,我们将按照图示的顺序来遍历其中的项目。
翻阅SDK手册中关于Tree-View控件的相关章节,发现了几个有用的消息:
TVM_GETNEXTITEM:得到项目的句柄(参数:TVGN_ROOT得到根句柄,TVGN_NEXTVISIBLE得到下一个可见项目的句柄);
TVM_EXPAND:展开或折叠指定项目(参数:TVE_EXPAND展开指定项目);
TVM_SELECTITEM:选中指定项目。
利用这些消息和SendMessage()函数,我们可以很容易写出遍历代码。
二:具体实践
在本文所提供的DEMO中,有一段将十六进制字符串转换成十进制无符号长整型的代码,作用是将用户输入的十六进制TV句柄值转换成十进制并存放在变量dec_sum中。此代码不列入本文讨论的范畴,大家不闲弱智的话就将就着用吧。下面是实现遍历功能的关键代码:
/* Tree-View Control_Demo_SeqShow 1.0 版
* 版权所有 (C) 2006 天津 赵春生
* http://timw.yeah.net
* 本程序能顺序遍历TV控件中的所有项目。
* 代码在Win2000P+SP4 + VC6+SP6测试通过。
if(error==0)//如果在数据验证转换的过程中未出现错误(error==0时无错误)
//下面为核心部分:顺序显示(选中)指定Tree-View控件中的所有Item.
hwnd=HWND(dec_sum);//得到转换后的数据
//得到根句柄
tvitem.hItem=(HTREEITEM)::SendMessage(hwnd, TVM_GETNEXTITEM,TVGN_ROOT, 0x0);
::SendMessage(hwnd, TVM_SELECTITEM,TVGN_CARET, (long)tvitem.hItem);//选中状态
while((long)tvitem.hItem)
//当此项目能展开时
while(::SendMessage(hwnd, TVM_EXPAND,TVE_EXPAND, (long)tvitem.hItem))
//选择下一个可见项目
tvitem.hItem=(HTREEITEM)::SendMessage(hwnd,
TVM_GETNEXTITEM,TVGN_NEXTVISIBLE,
(long)tvitem.hItem);
//选中状态
::SendMessage(hwnd, TVM_SELECTITEM,TVGN_CARET, (long)tvitem.hItem);
//当不能再展开的时候,选择下一个可见项目
tvitem.hItem=(HTREEITEM)::SendMessage(hwnd,
TVM_GETNEXTITEM,TVGN_NEXTVISIBLE,
(long)tvitem.hItem);
//选中状态
::SendMessage(hwnd, TVM_SELECTITEM,TVGN_CARET,
(long)tvitem.hItem);
//释放内存
CloseHandle(hwnd);
//顺序显示(选中)完毕
三:TV_Demo_SeqShow的使用方法(图2):
1.用SPY++的[Find Window]功能获得目标TV的句柄;
2.将句柄值输入到TV_Demo_SeqShow中的[Tree-View Control''s Handle:];
3.点击[GO!];
如果你把[Windows 资源管理器]中的[文件夹]作为目标,那你可要作好心理准备了……如果实在忍受不了这种刺激,干脆把管理器关掉就可以了。
第二部分:查找外部程序Tree-View中的项目
一:程序说明:
我们已经成功得对外部程序Tree-View中的项目进行了遍历,如果能在遍历的过程中读取每一个项目的名称,结合我们给定的项目名进行比较,那么查找某个项目的问题将变得易如反掌。由此可见:关键的问题是如何读取项目的名称。
读取项目的名称要发送TVM_GETITEM消息,由于该消息需要为LPARAM参数提供一个TV_ITEM结构的地址,在跨进程发送消息的前提下,为了使外部程序正常使用该内存地址,所以我们必须将TV_ITEM结构插入到目标进程的地址空间中去,代码如下:
ptvitem=(TVITEM*)VirtualAllocEx(hProcess,NULL,sizeof(TVITEM),MEM_COMMIT,PAGE_READWRITE);//分配内存
WriteProcessMemory(hProcess,ptvitem,&tvitem,sizeof(TVITEM),NULL);//写入内存
在写入内存之前,要将TV_ITEM结构配置好:
tvitem.mask=TVIF_TEXT;
tvitem.cchTextMax=512;
tvitem.pszText=pI
mask要设置成TVIF_TEXT,因为我们需要的是pszText的值;cchTextMax可以设置得稍微大一些,cchTextMax=512即可;hItem的值用来指定究竟哪个项目来接收TVM_GETITEM消息,该值在遍历的过程中动态获得;重要的是用来存放项目名称的缓冲区地址,即pszText参数的设置:和TV_ITEM结构一样,也要把她插入到目标进程的地址空间中去:
pItem=(char*)VirtualAllocEx(hProcess,NULL,16,MEM_COMMIT,PAGE_READWRITE);
二:具体实践:
作为演示,下面的这段程序将在我们指定的Tree-View控件中查找我们需要的项目,在发现第一个部分匹配的项目后,程序将停止运行,不再进行查找操作。作为演示程序,程序并没有做速度上的优化,大家在具体应用的过程中可自行修改。程序找到目标后的效果图(图 三):
/* Tree-View Control_Demo_SeqSearch 1.0 版
* 版权所有 (C) 2006 天津 赵春生
* http://timw.yeah.net
* 本程序能按用户指定的项目名称顺序查找TV控件中的项目。
* 代码在Win2000P+SP4 + VC6+SP6测试通过。
if(error==0)//如果在数据验证转换的过程中未出现错误(error==0时无错误)
//下面为核心部分:按用户指定的项目名称顺序查找Tree-View控件中的Item.
hwnd=HWND(dec_sum);//得到转换后的数据
GetWindowThreadProcessId(hwnd, &PID);
hProcess=OpenProcess(PROCESS_ALL_ACCESS,false,PID);
if (!hProcess)
MessageBox("获取进程句柄操作失败!","错误!");
ptvitem=(TVITEM*)VirtualAllocEx(hProcess,
sizeof(TVITEM),
MEM_COMMIT,
PAGE_READWRITE);
pItem=(char*)VirtualAllocEx(hProcess,
MEM_COMMIT,
PAGE_READWRITE);
if (!ptvitem)
MessageBox("无法分配内存!","错误!");
MessageBox("本演示程序将按用户指定的项目名称顺序查找。","提示");
tvitem.mask=TVIF_TEXT;
tvitem.cchTextMax=512;
tvitem.pszText=pI
//得到根句柄
tvitem.hItem=(HTREEITEM)::SendMessage(hwnd,
TVM_GETNEXTITEM,
TVGN_ROOT,
//选中状态
::SendMessage(hwnd,
TVM_SELECTITEM,
TVGN_CARET,
(long)tvitem.hItem);
//将设置好的结构插入目标进程
WriteProcessMemory(hProcess,
sizeof(TVITEM), NULL);
//发送TVM_GETITEM消息
::SendMessage(hwnd,
TVM_GETITEM,
(LPARAM)ptvitem);
//获取pszText
ReadProcessMemory(hProcess, pItem, ItemBuf, 512, NULL);
//MessageBox(ItemBuf,"ITEM TEXT");
if( strnicmp( ItemBuf,
str_item_text,
strlen(str_item_text) ) == 0)
MessageBox("已经找到!","恭喜");
//如果根就是我们要找的目标,那么程序执行到这里就可以结束了。
tvitem.hItem=(HTREEITEM)0x0;
while((long)tvitem.hItem)
//当此项目能展开时
while(::SendMessage(hwnd,
TVM_EXPAND,
TVE_EXPAND,
(long)tvitem.hItem))
//选择下一个可见项目
tvitem.hItem=(HTREEITEM)::SendMessage(hwnd,
TVM_GETNEXTITEM,TVGN_NEXTVISIBLE,
(long)tvitem.hItem);
//选中状态
::SendMessage(hwnd,
TVM_SELECTITEM,TVGN_CARET,
(long)tvitem.hItem);
//将设置好的结构插入目标进程
WriteProcessMemory(hProcess,
sizeof(TVITEM),
//发送TVM_GETITEM消息
::SendMessage(hwnd,
TVM_GETITEM,
(LPARAM)ptvitem);
//获取pszText
ReadProcessMemory(hProcess,
//MessageBox(ItemBuf,"ITEM TEXT");
if( strnicmp( ItemBuf,
str_item_text,
strlen(str_item_text) ) == 0)
MessageBox("已经找到!","恭喜");
//如果发现我们要找的目标,那么程序执行到这里就可以结束了。
tvitem.hItem=(HTREEITEM)0x0;
if(Bingo!=1)
//当不能再展开的时候,选择下一个可见项目
tvitem.hItem=(HTREEITEM)::SendMessage(hwnd,
TVM_GETNEXTITEM,TVGN_NEXTVISIBLE,
(long)tvitem.hItem);
//选中状态
::SendMessage(hwnd,
TVM_SELECTITEM,
TVGN_CARET,
(long)tvitem.hItem);
//将设置好的结构插入目标进程
WriteProcessMemory(hProcess,
sizeof(TVITEM),
//发送TVM_GETITEM消息
::SendMessage(hwnd,
TVM_GETITEM,
(LPARAM)ptvitem);
ReadProcessMemory(hProcess,
NULL);//获取pszText
//MessageBox(ItemBuf,"ITEM TEXT");
if( strnicmp( ItemBuf,
str_item_text,
strlen(str_item_text) ) == 0)
MessageBox("已经找到!","恭喜");
//如果发现我们要找的目标,那么程序执行到这里就可以结束了。
tvitem.hItem=(HTREEITEM)0x0;
//释放内存
CloseHandle(hwnd);
CloseHandle(hProcess);
VirtualFreeEx(hProcess, ptvitem, 0, MEM_RELEASE);
//顺序查找完毕
代码写得不够幽雅,大家见笑了。在此之前,类似的拙文我已经写了四篇,希望大家看完后能举一反三。谢谢。
向其他程序的ListView控件发送LVM_GETITEMTEXT
如何选中其他程序ListView控件中的某个Item
如何更改其他程序ListView控件中某个Item的内容
如何获取其他程序RichEdit控件中的内容
最多还可以输入100字
【VIP年会员制套餐】
【C/C++软件工程师实战能力集训大纲】
VC知识库发布了C/C++业界的“本草纲目”
【牛人都在千人一号群! 加群三步走!!!】
第一步:请必须加VC知识库QQ: 为好友;
第二步:请必须关注本站微博:
第三步:申请加入群:.(必须将关注微博截屏发到QQ方可通过!)
【最新2013:】
全部100% VC++源码提供: E-Form++全新大型SCADA & HMI解决方案源码、CAD解决方案源码、Gis解决方案源码 、电力石油化工仿真与图形建模解决方案源码、大量其他高级制图VC++源码下载!
【 新视频发布】
o o o o o o o o o o
用CListCtrl来显示数据比较方便,有时候我们需要标注某一列或某一个单元格的背景和字体颜色,或者需要改变一下行高和字体大小,CListCtrl要改变这些并不是很方便。本文将介绍如何派生一个类来改变CListCtrl及其表头的高度、字体大小、列背景颜色、单元格背景颜色、列字体颜色、单元格字体颜色。...
用CListCtrl来显示数据比较方便,有时候我们需要标注某一列或某一个单元格的背景和字体颜色,或者需要改变一下行高和字体大小,CListCtrl要改变这些并不是很方便。本文将介绍如何派生一个类来改变CListCtrl及其表头的高度、字体大小、列背景颜色、单元格背景颜色、列字体颜色、单元格字体颜色。...
本文介绍了套接字编程的基本知识。...

我要回帖

更多关于 零序电流互感器的作用 的文章

 

随机推荐