Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

windowsÏÂCд·þÎñ»ù±¾¿ò¼Ü

ÎÒ½«ÒµÎñ´úÂëÈ¥µôÁË£¬Ö»ÊÇÓÃÀ´´î¸ö»ù±¾¿ò¼Ü£¬Óõ½µÄʱºòÖ±½ÓÄÃÀ´ÓþͿÉÒÔÁË¡£(ÎÒÕâ¸öÊÇÆðÒ»¸ösocket)Èç¹ûÓÐʲô½¨ÒéÇëÁªÏµÎÒ¡£ChuangshengGuan@Gmail.com
main.c
Code:
#include "Services.h"
int main(int argc, char *argv[])
{
  SERVICE_TABLE_ENTRY ServiceTable[2];
 
  /* Ö¸Ïò±íʾ·þÎñÃû³Æ×Ö·û´®µÄÖ¸Õë,µ±¶¨ÒåÁ˶à¸ö·þÎñʱ£¬ÄÇôÕâ¸öÓò±ØÐëÖ¸¶¨ */
  ServiceTable[0].lpServiceName = "SoftTokenAuth";
 
  /* Ö¸Ïò·þÎñÖ÷º¯ÊýµÄÖ¸Õë(·þÎñÈë¿Úµã) */
  ServiceTable[0].lpServiceProc = (LPSERVICE_MAIN_FUNCTION)service_main;
  ServiceTable[1].lpServiceName = NULL;
  ServiceTable[1].lpServiceProc = NULL;
 
  /* Æô¶¯·þÎñµÄ¿ØÖÆ·ÖÅÉ»úÏß³Ì */
  StartServiceCtrlDispatcher(ServiceTable);
  return 0;
}
services.c
Code:
SERVICE_STATUS ServiceStatus;
SERVICE_STATUS_HANDLE hStatus;
/* ¿ØÖƾä±ú */
void control_handler(DWORD request)
{
   switch(request)
   {
      case SERVICE_CONTROL_STOP:
         /* ÔÚÕâÀïÖ´ÐÐÍ£Ö¹¶¯×÷ ....*/
         ServiceStatus.dwWin32ExitCode = 0;
         ServiceStatus.dwCurrentState = SERVICE_STOPPED;
         SetServiceStatus (hStatus, &ServiceStatus);
         return;
      case SERVICE_CONTROL_SHUTDOWN:
         /* ÔÚÕâÀïÖ´Ðйرն¯×÷.... */
         ServiceStatus.dwWin32ExitCode = 0;
         ServiceStatus.dwCurrentState = SERVICE_STOPPED;
         SetServiceStatus (hStatus, &ServiceStatus);
         return;
       
      default:
         break;
    }
    /* ±¨¸æµ±Ç°×´Ì¬ */
    SetServiceStatus (hStatus, &ServiceStatus);
   


Ïà¹ØÎĵµ£º

C³ÌÐòÉè¼ÆµÄ³£ÓÃËã·¨


¡¡¡¡Ëã·¨£¨Algorithm£©£º¼ÆËã»ú½âÌâµÄ»ù±¾Ë¼Ïë·½·¨ºÍ²½Öè¡£Ëã·¨µÄÃèÊö£ºÊǶÔÒª½â¾öÒ»¸öÎÊÌâ»òÒªÍê³ÉÒ»ÏîÈÎÎñËù²ÉÈ¡µÄ·½·¨ºÍ²½ÖèµÄÃèÊö£¬°üÀ¨ÐèҪʲôÊý¾Ý£¨ÊäÈëʲôÊý¾Ý¡¢Êä³öʲô½á¹û£©¡¢²ÉÓÃʲô½á¹¹¡¢Ê¹ÓÃʲôÓï¾äÒÔ¼°ÈçºÎ°²ÅÅÕâЩÓï¾äµÈ¡£Í¨³£Ê¹ÓÃ×ÔÈ»ÓïÑÔ¡¢½á¹¹»¯Á÷³Ìͼ¡¢Î±´úÂëµÈÀ´ÃèÊöËã·¨¡£
¡¡¡¡Ò»¡¢¼ÆÊý¡¢ÇóºÍ¡ ......

CÖеĿÕ


1.   ʲôÊÇ¿ÕÖ¸Õë³£Á¿£¨null pointer constant£©?
[ 6.3.2.3-3] An integer constant expression with the value 0, or such an expression cast to type void *, is called a null pointer constant.
ÕâÀï¸æËßÎÒÃÇ£º0¡¢0L¡¢'\0'¡¢3 - 3¡¢0 * 17 £¨ËüÃǶ¼ÊÇ“integer constant expression”£©ÒÔ¼° ......

C\C++ÖÐÊý×éÔªËØÏ±êÔ½½ç¿ÉÄÜÒýÆðµÄÎÊÌâ

Êý×éÊÇÀàÐÍÏàͬµÄ¶ÔÏóµÄÐòÁУ¬ÆäÖеĶÔÏó³ÆÎªÊý×éÔªËØ¡£Ò²¿ÉÒÔ½«Êý×éÏëÏñ³ÉÒ»Á¬´®µÄÓÃϱêÖµ±àºÅµÄÏàÁÚ´æ´¢Çø¡£
       ¿ÉÄÜÔÚijЩ±à³ÌÓïÑÔÖУ¬Ò»¸öϱê±äÁ¿ÊDz»ÔÊÐí³¬³öÊý×鶨ÒåÖÐËùÉèµÄ½çÏ޵ġ£µ«ÊÇÔÚCºÍC++ÖУ¬Êý×éÊÇûÓÐÕâÖÖ°²È«´ëÊ©µÄ¡£ÏÂÃæÏÈÀ´¿´¿´Êý×éϱêÔ½½çµÄ¼¸ÖÖÒì³£½á¹û¡£
&nb ......

CͼÐαà³Ìѧϰ


Ò»¡¢ÆÁÄ»²Ù×÷º¯Êý
1. clrscr()Çå³ý×Ö·û´°¿Úº¯Êý
2. window()×Ö·û´°¿Úº¯Êý
3. gotoxy()¹â±ê¶¨Î»º¯Êý
4. clreol() Çå³ý¹â±êÐÐβ×Ö·ûº¯Êý
5. insline() ²åÈë¿ÕÐк¯Êý
6. delline() ɾ³ýÒ»Ðк¯Êý
7. gettext() ¿½½øÎÄ×Öº¯Êý
8. puttext() ¿½³öÎÄ×Öº¯Êý
9. movetext() ÒÆ¶¯ÎÄ×Öº¯Êý
¶þ¡¢×Ö·ûÊôÐÔº¯Êý
10. textmode( ......

C ³ÌÐòµÄ´æ´¢¿Õ¼ä²¼¾Ö

C ³ÌÐòÓÐÏÂÃæ¼¸¸ö²¿·Ö×é³É£º
  1  ÕýÎĶΣºÕâÊÇCPU Ö´ÐеĻúÆ÷Ö¸ÁîµÄ²¿·Ö¡£Í¨³£ÕýÎĶÎÊÇ¿ÉÒÔ¹²ÏíµÄ£¬ËùÒÔ¼´Ê¹ÊÇÆµ·±Ö´ÐеijÌÐò£¨È磺Îı¾±à¼­Æ÷£©ÔÚ´æ´¢Æ÷ÉÏÒ²Ö»ÓÐÒ»¸ö¸±±¾¡£ÁíÍâÕýÎĶγ£³£ÊÇÖ»¶ÁµÄ£¬ÒÔ·ÀÖ¹³ÌÐòÒòΪÒâÍâ¶øÐÞ¸ÄÆä×ÔÉíµÄÖ¸Áî¡£
  2  ³õʼ»¯Êý¾Ý¶Î£ºÍ¨³£½«´Ë¶Î³ÆÎªÊý¾Ý¶Î£¬Ëü°üº¬Á˳ÌÐò ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ