实验六 Windows进程的创建

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ቤተ መጻሕፍቲ ባይዱ
实验内容
要求写一个类似发布网页垃圾广告的程序, 程序实现如下功能:
本程序每隔一分钟打开一个网页 打开的网页轮流显示以下五个网站:
搜狐(http://www.sohu.com) 搜狐(http://www.sohu.com) 新浪(http:// 新浪(http:// www.sina.com.cn) 中国程序员网(http://www.csdn.net) 中国程序员网(http://www.csdn.net) 互动出版网(http://www.china互动出版网(http://www.china-pub.com) 教育部(http://www.moe.edu.cn/) 教育部(http://www.moe.edu.cn/)
示例程序
#include <windows.h> char URLs[][256]={ "IEXPLORE http://www.swfc.edu.cn", "IEXPLORE http://jwc.swfc.edu.cn", "IEXPLORE http://cs2.swfc.edu.cn", "IEXPLORE http://bbs.swfc.edu.cn" };
实验六 Windows进程 Windows进程 的创建
授课教师:付勇智 fuyongzhi@swfc.edu.cn 西南林业大学 理学院
实验目的
熟悉Windows下进程管理相关机制 熟悉Windows下进程管理相关机制 掌握Windows下调用相关API函数创建进 掌握Windows下调用相关API函数创建进 程的方法 熟悉Windows下多线程和同步相关机制 熟悉Windows下多线程和同步相关机制
思考题
在已完成程序基础上考虑应用《操作系统》 在已完成程序基础上考虑应用《操作系统》课程 所学知识,扩展上述程序,让你的程序能够动态 的从一个文本文件读入广告网页的URL,并依次 的从一个文本文件读入广告网页的URL,并依次 播放相关网页广告? 如果相关广告网页URL地址的文本文件放在某个 如果相关广告网页URL地址的文本文件放在某个 网络服务器上,能否让你的程序动态下载更新这 个文件信息?(这里需要用到《计算机网络》相 个文件信息?(这里需要用到《计算机网络》 关知识,已超出本课程范围,供学有余力的同学 在后续课程学习过程或自学中思考和实践。)
进程创建
_spawnl系统调用(参考课件第五章) _spawnl系统调用(参考课件第五章) CreateProcess系统调用 CreateProcess系统调用
BOOL CreateProcess( LPCTSTR lpApplicationName, // lpApplicationName, name of executable module LPTSTR lpCommandLine, lpCommandLine, // command line string LPSECURITY_ATTRIBUTES lpProcessAttributes, lpProcessAttributes, // SD LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD lpThreadAttributes, BOOL bInheritHandles, // handle inheritance option bInheritHandles, DWORD dwCreationFlags, // creation flags LPVOID dwCreationFlags, lpEnvironment, lpEnvironment, // new environment block LPCTSTR lpCurrentDirectory, lpCurrentDirectory, // current directory name LPSTARTUPINFO lpStartupInfo, // startup information lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation // process information );
提示
每次打开网页,实际上可以通过创建进程, 并用进程新建运行程序C:\ 并用进程新建运行程序C:\Program Files\ Files\Internet Explorer\IEXPLORE.exe Explorer\ 并将对应要打开网站地址作为第一个执行 参数传递给IEXPLORE.exe 参数传递给IEXPLORE.exe
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { STARTUPINFO siStartInfo; PROCESS_INFORMATION piProcInfo; ZeroMemory( &siStartInfo, sizeof(STARTUPINFO) ); siStartInfo.cb=sizeof(siStartInfo); int i; while(1) { for (i=0; i<sizeof(URLs)/256; i++) { CreateProcess("C:\ CreateProcess("C:\\Program Files\\Internet Files\ Explorer\ Explorer\\IEXPLORE.EXE", URLs[i], NULL, NULL, FALSE, 0, NULL, "C:\\Program "C:\ Files\ Files\\Internet Explorer", &siStartInfo, &piProcInfo); Sleep(10000); } } return 0; }
相关文档
最新文档