C++中的C++代码真的这么复杂吗

下面着重讲述学习C++时碰到的C++代码编程的相关问题,以及如何进行编制C++代码的技巧,如何更好的进行C++代码编制,掌握了C++代码编制问题就等于说是整个软件开发周期少了不少弯路,降低工作的复杂性。

void main()  


{  


    SERVICE_TABLE_ENTRY ServiceTable[2];  



    ServiceTable[0].lpServiceName = "Name";//线程名字  




    ServiceTable[0].lpServiceProc = (LPSERVICE_MAIN_FUNCTION)ServiceMain;//线程入口地址  




    ServiceTable[1].lpServiceName = NULL;  




    ServiceTable[1].lpServiceProc = NULL;//最后一个必须为NULL  



    StartServiceCtrlDispatcher(ServiceTable);// 启动服务的控制分派机线程  


} 

对于Service程序来说,它一般又由以下四部分组成:main(),ServiceMain()和Handler()当然还有我们的功能实现函数比如MyWork()它们之间的关系,用一个简单的图示就可以了然。

其服务程序的基本流程就是由main()调用ServiceMain()而由ServiceMain()调用Handler()和执行功能函数MyWork()到现在为止,你以经大体了解了服务程序的流程,按上面的流程一步一步来实现这个后门程序。

1.程序的入口main()函数

服务程序的入口与普通程序一样也是从main()开始,但不同的是服务程序的main极为简单,因为它只负责创建分派表并启动控制分派机,其C++代码如下:

void main()  


{  


    SERVICE_TABLE_ENTRY ServiceTable[2];  



    ServiceTable[0].lpServiceName = "Name";//线程名字  




    ServiceTable[0].lpServiceProc = (LPSERVICE_MAIN_FUNCTION)ServiceMain;//线程入口地址  




    ServiceTable[1].lpServiceName = NULL;  




    ServiceTable[1].lpServiceProc = NULL;//最后一个必须为NULL  



    StartServiceCtrlDispatcher(ServiceTable);// 启动服务的控制分派机线程  


} 

2. 服务的真正入口ServiceMain()

相关推荐