如何用c语言状态机设计模式的程序在静默状态下关闭英雄联盟

2003年9月 C/C++大版内专家分月排行榜第二2002年6月 C/C++大版内专家分月排行榜第二2002年4月 C/C++大版内专家分月排行榜第二
2007年3月 C/C++大版内专家分月排行榜第三2007年2月 C/C++大版内专家分月排行榜第三2007年1月 C/C++大版内专家分月排行榜第三2003年7月 C/C++大版内专家分月排行榜第三
2003年9月 C/C++大版内专家分月排行榜第二2002年6月 C/C++大版内专家分月排行榜第二2002年4月 C/C++大版内专家分月排行榜第二
2007年3月 C/C++大版内专家分月排行榜第三2007年2月 C/C++大版内专家分月排行榜第三2007年1月 C/C++大版内专家分月排行榜第三2003年7月 C/C++大版内专家分月排行榜第三
2003年9月 C/C++大版内专家分月排行榜第二2002年6月 C/C++大版内专家分月排行榜第二2002年4月 C/C++大版内专家分月排行榜第二
2007年3月 C/C++大版内专家分月排行榜第三2007年2月 C/C++大版内专家分月排行榜第三2007年1月 C/C++大版内专家分月排行榜第三2003年7月 C/C++大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 3326 人关注过本帖
标题:C中程序一运行就关闭了?
等 级:新手上路
帖 子:15
&&问题点数:0&&回复次数:14&&&
C中程序一运行就关闭了?
include &graphics.h&
#include &conio.h&
#include &stdio.h&
#define PATH &c:\turboc2&
void main()
&&& int i,gdriver=VGA,gmode=VGAHI;
&&& initgraph(&gdriver,&gmode,PATH);
&&& line(150,100,100,300);
&&& getch();
&&& closegraph();
这段程序一运行就关闭了怎么回事?看不到图形窗口,为什么呢?
搜索更多相关主题的帖子:
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2779
专家分:6060
程序运行完了当然自动关闭咯
我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
来 自:CC
等 级:贵宾
威 望:11
帖 子:1067
专家分:1454
DOS程序就应该到DOS下运行
环境不对,程序当然运行不对
去启动一个DOS 6.22吧
别人能不等于你能,别人不能不等于你不能
不要问别人能不能,要说:我能
等 级:新手上路
试一下在最后加上while(1);看行不行
等 级:新手上路
楼上说得有道理,不过这样的话,也就出现了另外一个问题,哪就是要手动关闭程序
来 自:四川大学
等 级:新手上路
帖 子:21
加个 getch();&& 虽然我不知道这个是做什么滴 但我一直用来解决这个问题··
Only by standing on the shoulder of the giant can I see farther and farther.
等 级:新手上路
帖 子:68
楼上 那个是不是&&getchar();&&啊?
来 自:四川大学
等 级:新手上路
帖 子:21
不是getchar()啦&&就是 getch();
Only by standing on the shoulder of the giant can I see farther and farther.
等 级:新手上路
帖 子:15
回复 1# 的帖子
可能是电脑系统或者是什么插件问题吧。
&&&&&& 换了台电脑,可以运行显示。
等 级:新手上路
加这个dos命令也可以
system(&pause&);
版权所有,并保留所有权利。
Powered by , Processed in 0.060927 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved如何关闭其他的应用程序
如何关闭其他的应用程序
问题&&& &&& 有的程序员希望能够从自己的应用程序中启动其他的应用程序,并在操作完成后关闭应用程序。例如: 从应用程序中启动 Windows 应用程序 Write,作记录或者写备忘录,然后关闭此应用程序。有时,还希望 能够忽略应用程序 Write 的消息框,消息框是用来询问用户是否保存文件的改变。&&& &&& 如何使用 Windows 9x API 函数尽量简单地实现这两个功能呢?&&& 方法&&& &&& 在 3.2 节中,介绍了如何列出当前正在运行的任务以及如何激活选中的任务。本节要实现的功能类似, 但在应用程序程序中要激活的和关闭的任务一般是一定的。不过为了使本节的例子程序更具有普遍性,仍然 由用户来选择要关闭的应用程序,并决定使用的关闭方法。&&& &&& 为了实现这些功能,需要使用 Windows API 函数 PostMessage.&&& 步骤&&& &&& 按照下列步骤实现一个例子程序。运行此例子程序,从菜单 Tasks 中选择菜单项 Terminate Tasks, 将弹出一个对话框,显示当前运行的窗口。选择一个窗口并点击按钮 Close App 或按钮 Quit App,对话 框将关闭,选中的窗口也将关闭。&&& &&& 启动 Windows 应用程序 WordPad,并键入一些文本,测试两个按钮的功能,会发现例子程序有时询问 是否存储已改变的文本,而有时不询问。&&& 实现例子程序的具体步骤如下:&&& &&& 1.在 Visual C++ 中,利用 AppWizard 创建新的项目文件,并命名此项目文件为 LD33.MAK.&&& &&& 2.进入 AppStudio 并创建新的对话框。添加一个列表框,改变按钮 OK 的标题为 Close,删除 Cancel 按钮。将对话框的标题改为 Terminate Task.&&& &&& 3.在对话框中添两个按钮,标题分别为 Close App 和 Quit App.&&& &&& 4.进入 ClassWizard 为此对话框生成新的对话框类,类名为 CTerminateTaskDlg.从对象列表中选 择 CTerminateTaskDlg,从消息列表中选择消息 WM_INITDIALOG.点击按钮 Add Function,在方法 OnInitDialog 中输入下列代码:&&& &&& BOOL CTerminateTaskDlg::OnInitDialog()&&& &&& {&&& &&& CDialog::OnInitDialog();&&& &&& CListBox * list=(CListBox *)GetDlgItem(IDC_LIST1);&&& &&& list-&ResetContent();&&& &&& FARPROC EnumProcInstance=MakeProcInstance(&&& &&& (FARPROC)EnumWindowsProc,AfxGetInstanceHandle());&&& &&& EnumWindows((WNDENUMPROC)EnumProcInstance,(LPARAM)list);&&& &&& FreeProcInstance(EnumProcInstance);&&& &&& CenterWindow();&&& &&& return TRUE;& // return TRUE unless you set the focus to a control&&& &&& }&&& &&& 5.在文件 TerminateTaskDlg.cpp 中,方法 OnInitDialog 的前面,添加下列代码:&&& &&& static BOOL CALLBACK EnumWindowsProc(HWND hwnd,LPARAM lParam)&&& &&& {&&& &&& CListBox * list=(CListBox *)lP&&& &&& char& buf[256];&&& &&& GetWindowText(hwnd,buf,256);&&& &&& if(strlen(buf))&&& &&& {&&& &&& int idx=list-&AddString(buf);&&& &&& list-&SetItemData(idx,(DWORD)hwnd);&&& &&& }&&& &&& return TRUE;&&& &&& }[nextpage]&&& &&& 6.从对象列表中选择 ID_BUTTON1,从消息列表中选择消息 BN_CLICKED,命名方法为 OnCloseApp,并在此方法中添加下列代码:&&& &&& void CTerminateTaskDlg::OnCloseApp()&&& &&& {&&& &&& CListBox * list=(CListBox *)GetDlgItem(IDC_LIST1);&&& &&& int idx=list-&GetCurSel();&&& &&& if(idx==LB_ERR)&&& &&& {&&& &&& MessageBox("You must select a window to active!",&&& &&& "Error",MB_OK|MB_APPLMODAL);&&& &&&&&& &&& }&&& &&& HWND hWnd=(HWND)list-&GetItemData(idx);&&& &&& ::PostMessage(hWnd,WM_CLOSE,0,0L);&&& &&& EndDialog(IDOK);&&& &&& }&&& &&& 7.从对象列表中选择 ID_BUTTON2,从消息列表中选择消息 BN_CLICKED,命名方法为 OnQuitApp,并在此方法中添加下列代码:&&& &&& void CTerminateTaskDlg::OnQuitApp()&&& &&& {&&& &&& CListBox * list=(CListBox *)GetDlgItem(IDC_LIST1);&&& &&& int idx=list-&GetCurSel();&&& &&& if(idx==LB_ERR)&&& &&& {&&& &&& MessageBox("You must select a window to active!",&&& &&& "Error",MB_OK|MB_APPLMODAL);&&& &&&&&& &&& }&&& &&& HWND hWnd=(HWND)list-&GetItemData(idx);&&& &&& ::PostMessage(hWnd,WM_QUIT,0,0L);&&& &&& EndDialog(IDOK);&&& &&& }&&& &&& 8.在菜单 Tasks 中添加新的菜单项 Terminate Tasks,ID 命名为 ID_TERMINATE_TASK.&&& &&& 9.在 ClassWizard 中。从下拉列表中选择对象 CMainFrame,从对象列表中选择 ID_TERMINATE_TASK,选择消息 COMMAND,点击按钮 Add Function,在方法 OnTerminateTask 中输入下列代码:&&& &&& void CMainFrame::OnTerminateTask()&&& &&& {&&& &&& CTerminateTaskD&&& &&& dlg.DoModal();&&& &&& }&&& &&& 10.在文件 MAINFRM.CPP 的顶部添加下列行:&&& &&& #include "TerminateTaskDlg.h"&&& &&& 11.编译并运行此例子程序。&&& &&& 用法&&& &&& 同前一节一样,本节也使用了 API 函数 EnumWindows 及回调函数 EnumWindowsProc 来列出窗 口,同样,也将 Windows 句柄存放在列表框附加数据部分。&&& &&& 当用户从对话框中选择了按钮 Close App 后,选中的列表项及句柄将被取回。使用此句柄传送标识 符为 WM_CLOSE 的消息给窗口,表示窗口应被关闭。使用消息 WM_CLOSE 关闭窗口,将不会提示用户保 存已改变的文本。&&& &&& 当用户从对话框中选择了按钮 Quit App 后,选中的列表项及句柄将被取回。使用此句柄传送标识符 为 WM_QUIT 的消息给窗口,表示窗口应被关闭。使用消息 WM_CLOSE 关闭窗口,将会提示用户保存已改 变的文本,并允许用户撤消关闭窗口的请示。
H3C认证Java认证Oracle认证
基础英语软考英语项目管理英语职场英语
.NETPowerBuilderWeb开发游戏开发Perl
二级模拟试题一级模拟试题一级考试经验四级考试资料
软件测试软件外包系统分析与建模敏捷开发
法律法规历年试题软考英语网络管理员系统架构设计师信息系统监理师
高级通信工程师考试大纲设备环境综合能力
路由技术网络存储无线网络网络设备
CPMP考试prince2认证项目范围管理项目配置管理项目管理案例项目经理项目干系人管理
职称考试题目
招生信息考研政治
网络安全安全设置工具使用手机安全
生物识别传感器物联网传输层物联网前沿技术物联网案例分析
Java核心技术J2ME教程
Linux系统管理Linux编程Linux安全AIX教程
Windows系统管理Windows教程Windows网络管理Windows故障
数据库开发Sybase数据库Informix数据库
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&

我要回帖

更多关于 静默安装拦截怎么关闭 的文章

 

随机推荐