vc环境下用c语言编译一个程序调用windows

vc环境下用c语言编译一个程序调用windows,第1张

调用window库窗口函数即可创建windows窗口。

必须使用windows的编译器,如VC,MS等等。

RegisterClassEx函数:该函数注册在随后调用CreateWindow函数和CreateWindowEx函数中使用的窗口类。 RegisterClass函数己经由函数RegisterClassEx函数来代替,但是,如果不需要设置类的小目标则仍然可以使用RegisterClass函数。

CreateWindowEx函数:该函数创建一个具有扩展风格的层叠式窗口、d出式窗口或子窗口,其他与CreateWindow函数相同。关于创建窗口和其他参数的内容,请参看CreateWindow。具体仍可见微软的msdn。

消息处理函数WindowProc:该函数是一个应用程序定义的函数。它处理发送给窗口的消息。WINDPROC类型定义了一个指向该回调函数的指针。WindowProc是用于应用程序定义函数的占位符。

看明白了,就是要读取、修改其它进程的内存空间的意思呗

方法:

1获得其他进程ID,可手动输入或者通过FindWindow及GetWindowThreadProcessId的组合来获取

2OpenProcess打开进程,以读写方式PROCESS_VM_WRITE | PROCESS_VM_READ

3通过ReadProcessMemory和WriteProcessMemory进行内存读写

按照这方法读写挺容易的,最好你的程序有SeDebugPrivilege权限,至于文件在内存中的位置就要靠你自己查了,方法就是在文件的起始位置设置特殊变量,第一次做的时候可以将内存中的所有数据全部取出来,然后找出这个特殊位,计算其距离基地址的偏移量,下次再想修改文件的时候直接就用基地址加上偏移量就可以了。

函数的具体使用方法你查下msdn

含义如下:

ti表示一个变量,而且应该是一个结构体(struct)变量,wHour、wMinute、wSecond都是ti变量的成员,tiwHour表示的是ti变量中的wHour变量,即小时。

同理,tiwMinute表示分钟,tiwSecond表示秒。这里只不过把当前时间(时、分、秒)都放到一个结构体变量中进行存储罢了~!

1、图形编程都是用的纯C函数库,

比如Windows的GDI,还有DirectX,以及开源的OpenGL。这些都是纯C库,也就是说会C语言就能开发图形界面和游戏了。C++当然也可以调用这些函数库,但不是必要的。

2、学GDI的话最好的书是《Windows程序设计chm》这个文档,这东西网上到处都有。

学OpenGL的话,有个网站Nehe有完整的教学。人翻译了这个教程的中文版,google

“Nehe

opengl”

就能找到了。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12187902.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存