{"id":1468,"date":"2018-06-27T18:10:12","date_gmt":"2018-06-27T10:10:12","guid":{"rendered":"https:\/\/damogame.cn:15443\/wordpress\/?p=1468"},"modified":"2018-06-27T18:10:12","modified_gmt":"2018-06-27T10:10:12","slug":"incredibuild%e6%97%a0%e9%99%90%e8%af%95%e7%94%a8%e6%9c%9f%e7%a0%b4%e8%a7%a3%e7%a8%8b%e5%ba%8f","status":"publish","type":"post","link":"https:\/\/i007.cc\/wordpress\/archives\/1468","title":{"rendered":"Incredibuild\u65e0\u9650\u8bd5\u7528\u671f\u7834\u89e3\u7a0b\u5e8f"},"content":{"rendered":"<table class=\"highlight tab-size js-file-line-container\" data-tab-size=\"8\">\n<tbody>\n<tr>\n<td id=\"LC1\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/*!<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L2\" class=\"blob-num js-line-number\" data-line-number=\"2\"><\/td>\n<td id=\"LC2\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">@author winterma<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L3\" class=\"blob-num js-line-number\" data-line-number=\"3\"><\/td>\n<td id=\"LC3\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">@par Email: mahuaguan@126.com<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L4\" class=\"blob-num js-line-number\" data-line-number=\"4\"><\/td>\n<td id=\"LC4\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">@par Copyright (c) 2014<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L5\" class=\"blob-num js-line-number\" data-line-number=\"5\"><\/td>\n<td id=\"LC5\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">@date 2014-7-8<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L6\" class=\"blob-num js-line-number\" data-line-number=\"6\"><\/td>\n<td id=\"LC6\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">@brief Incredibuild\u65e0\u9650\u8bd5\u7528\u671f\u7834\u89e3\u7a0b\u5e8f<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L7\" class=\"blob-num js-line-number\" data-line-number=\"7\"><\/td>\n<td id=\"LC7\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">*\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L8\" class=\"blob-num js-line-number\" data-line-number=\"8\"><\/td>\n<td id=\"LC8\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L9\" class=\"blob-num js-line-number\" data-line-number=\"9\"><\/td>\n<td id=\"LC9\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">include<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">&lt;<\/span>fstream<span class=\"pl-pds\">&gt;<\/span><\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L10\" class=\"blob-num js-line-number\" data-line-number=\"10\"><\/td>\n<td id=\"LC10\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">include<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">&lt;<\/span>stdio.h<span class=\"pl-pds\">&gt;<\/span><\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L11\" class=\"blob-num js-line-number\" data-line-number=\"11\"><\/td>\n<td id=\"LC11\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">include<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">&lt;<\/span>fcntl.h<span class=\"pl-pds\">&gt;<\/span><\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L12\" class=\"blob-num js-line-number\" data-line-number=\"12\"><\/td>\n<td id=\"LC12\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">include<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">&lt;<\/span>io.h<span class=\"pl-pds\">&gt;<\/span><\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L13\" class=\"blob-num js-line-number\" data-line-number=\"13\"><\/td>\n<td id=\"LC13\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">include<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">&lt;<\/span>time.h<span class=\"pl-pds\">&gt;<\/span><\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L14\" class=\"blob-num js-line-number\" data-line-number=\"14\"><\/td>\n<td id=\"LC14\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">include<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">&lt;<\/span>sstream<span class=\"pl-pds\">&gt;<\/span><\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L15\" class=\"blob-num js-line-number\" data-line-number=\"15\"><\/td>\n<td id=\"LC15\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">include<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">&lt;<\/span>afxdisp.h<span class=\"pl-pds\">&gt;<\/span><\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L16\" class=\"blob-num js-line-number\" data-line-number=\"16\"><\/td>\n<td id=\"LC16\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">define<\/span> <span class=\"pl-en\">MAX_PATH<\/span> <span class=\"pl-c1\">1000<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L17\" class=\"blob-num js-line-number\" data-line-number=\"17\"><\/td>\n<td id=\"LC17\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">define<\/span> <span class=\"pl-en\">RETARTID<\/span> <span class=\"pl-c1\">129<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L18\" class=\"blob-num js-line-number\" data-line-number=\"18\"><\/td>\n<td id=\"LC18\" class=\"blob-code blob-code-inner js-file-line\">#<span class=\"pl-k\">define<\/span> <span class=\"pl-en\">DELAY<\/span> <span class=\"pl-c1\">5000<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L19\" class=\"blob-num js-line-number\" data-line-number=\"19\"><\/td>\n<td id=\"LC19\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">using<\/span> <span class=\"pl-k\">namespace<\/span> <span class=\"pl-en\">std<\/span><span class=\"pl-k\">;<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L20\" class=\"blob-num js-line-number\" data-line-number=\"20\"><\/td>\n<td id=\"LC20\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L21\" class=\"blob-num js-line-number\" data-line-number=\"21\"><\/td>\n<td id=\"LC21\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L22\" class=\"blob-num js-line-number\" data-line-number=\"22\"><\/td>\n<td id=\"LC22\" class=\"blob-code blob-code-inner js-file-line\">SERVICE_STATUS ServiceStatus;<\/td>\n<\/tr>\n<tr>\n<td id=\"L23\" class=\"blob-num js-line-number\" data-line-number=\"23\"><\/td>\n<td id=\"LC23\" class=\"blob-code blob-code-inner js-file-line\">SERVICE_STATUS_HANDLE hStatus;<\/td>\n<\/tr>\n<tr>\n<td id=\"L24\" class=\"blob-num js-line-number\" data-line-number=\"24\"><\/td>\n<td id=\"LC24\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L25\" class=\"blob-num js-line-number\" data-line-number=\"25\"><\/td>\n<td id=\"LC25\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">ServiceMain<\/span>(<span class=\"pl-k\">int<\/span> argc, <span class=\"pl-k\">char<\/span>** argv);<\/td>\n<\/tr>\n<tr>\n<td id=\"L26\" class=\"blob-num js-line-number\" data-line-number=\"26\"><\/td>\n<td id=\"LC26\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">ControlHandler<\/span>(DWORD request);<\/td>\n<\/tr>\n<tr>\n<td id=\"L27\" class=\"blob-num js-line-number\" data-line-number=\"27\"><\/td>\n<td id=\"LC27\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u7834\u89e3\u7a0b\u5e8f\u670d\u52a1\u540d\u79f0 *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L28\" class=\"blob-num js-line-number\" data-line-number=\"28\"><\/td>\n<td id=\"LC28\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">char<\/span> serviceName[] = <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>IncrediTrailDelay<span class=\"pl-pds\">&#8220;<\/span><\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L29\" class=\"blob-num js-line-number\" data-line-number=\"29\"><\/td>\n<td id=\"LC29\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">char<\/span> targetService[] = <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>IncrediBuild_Agent<span class=\"pl-pds\">&#8220;<\/span><\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L30\" class=\"blob-num js-line-number\" data-line-number=\"30\"><\/td>\n<td id=\"LC30\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> <span class=\"pl-en\">stopTargetService<\/span>();<\/td>\n<\/tr>\n<tr>\n<td id=\"L31\" class=\"blob-num js-line-number\" data-line-number=\"31\"><\/td>\n<td id=\"LC31\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> <span class=\"pl-en\">startTargetService<\/span>();<\/td>\n<\/tr>\n<tr>\n<td id=\"L32\" class=\"blob-num js-line-number\" data-line-number=\"32\"><\/td>\n<td id=\"LC32\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">writeToLog<\/span>(string);<\/td>\n<\/tr>\n<tr>\n<td id=\"L33\" class=\"blob-num js-line-number\" data-line-number=\"33\"><\/td>\n<td id=\"LC33\" class=\"blob-code blob-code-inner js-file-line\">string <span class=\"pl-en\">itos<\/span>(<span class=\"pl-k\">int<\/span> i);<\/td>\n<\/tr>\n<tr>\n<td id=\"L34\" class=\"blob-num js-line-number\" data-line-number=\"34\"><\/td>\n<td id=\"LC34\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">setKeyValue<\/span>(string keyValue);<\/td>\n<\/tr>\n<tr>\n<td id=\"L35\" class=\"blob-num js-line-number\" data-line-number=\"35\"><\/td>\n<td id=\"LC35\" class=\"blob-code blob-code-inner js-file-line\">string <span class=\"pl-en\">GetIncrediBuildLicKey<\/span>(DATE date);<\/td>\n<\/tr>\n<tr>\n<td id=\"L36\" class=\"blob-num js-line-number\" data-line-number=\"36\"><\/td>\n<td id=\"LC36\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L37\" class=\"blob-num js-line-number\" data-line-number=\"37\"><\/td>\n<td id=\"LC37\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">int<\/span> <span class=\"pl-en\">main<\/span>()<\/td>\n<\/tr>\n<tr>\n<td id=\"L38\" class=\"blob-num js-line-number\" data-line-number=\"38\"><\/td>\n<td id=\"LC38\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L39\" class=\"blob-num js-line-number\" data-line-number=\"39\"><\/td>\n<td id=\"LC39\" class=\"blob-code blob-code-inner js-file-line\">SERVICE_TABLE_ENTRY ServiceTable[<span class=\"pl-c1\">2<\/span>];<\/td>\n<\/tr>\n<tr>\n<td id=\"L40\" class=\"blob-num js-line-number\" data-line-number=\"40\"><\/td>\n<td id=\"LC40\" class=\"blob-code blob-code-inner js-file-line\">ServiceTable[<span class=\"pl-c1\">0<\/span>].<span class=\"pl-smi\">lpServiceName<\/span> = serviceName;<\/td>\n<\/tr>\n<tr>\n<td id=\"L41\" class=\"blob-num js-line-number\" data-line-number=\"41\"><\/td>\n<td id=\"LC41\" class=\"blob-code blob-code-inner js-file-line\">ServiceTable[<span class=\"pl-c1\">0<\/span>].<span class=\"pl-smi\">lpServiceProc<\/span> = (LPSERVICE_MAIN_FUNCTION)ServiceMain;<\/td>\n<\/tr>\n<tr>\n<td id=\"L42\" class=\"blob-num js-line-number\" data-line-number=\"42\"><\/td>\n<td id=\"LC42\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L43\" class=\"blob-num js-line-number\" data-line-number=\"43\"><\/td>\n<td id=\"LC43\" class=\"blob-code blob-code-inner js-file-line\">ServiceTable[<span class=\"pl-c1\">1<\/span>].<span class=\"pl-smi\">lpServiceName<\/span> = <span class=\"pl-c1\">NULL<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L44\" class=\"blob-num js-line-number\" data-line-number=\"44\"><\/td>\n<td id=\"LC44\" class=\"blob-code blob-code-inner js-file-line\">ServiceTable[<span class=\"pl-c1\">1<\/span>].<span class=\"pl-smi\">lpServiceName<\/span> = <span class=\"pl-c1\">NULL<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L45\" class=\"blob-num js-line-number\" data-line-number=\"45\"><\/td>\n<td id=\"LC45\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L46\" class=\"blob-num js-line-number\" data-line-number=\"46\"><\/td>\n<td id=\"LC46\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">StartServiceCtrlDispatcher<\/span>(ServiceTable);<\/td>\n<\/tr>\n<tr>\n<td id=\"L47\" class=\"blob-num js-line-number\" data-line-number=\"47\"><\/td>\n<td id=\"LC47\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> <span class=\"pl-c1\">0<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L48\" class=\"blob-num js-line-number\" data-line-number=\"48\"><\/td>\n<td id=\"LC48\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L49\" class=\"blob-num js-line-number\" data-line-number=\"49\"><\/td>\n<td id=\"LC49\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L50\" class=\"blob-num js-line-number\" data-line-number=\"50\"><\/td>\n<td id=\"LC50\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L51\" class=\"blob-num js-line-number\" data-line-number=\"51\"><\/td>\n<td id=\"LC51\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">ControlHandler<\/span>(DWORD request)<\/td>\n<\/tr>\n<tr>\n<td id=\"L52\" class=\"blob-num js-line-number\" data-line-number=\"52\"><\/td>\n<td id=\"LC52\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L53\" class=\"blob-num js-line-number\" data-line-number=\"53\"><\/td>\n<td id=\"LC53\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">switch<\/span> (request)<\/td>\n<\/tr>\n<tr>\n<td id=\"L54\" class=\"blob-num js-line-number\" data-line-number=\"54\"><\/td>\n<td id=\"LC54\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L55\" class=\"blob-num js-line-number\" data-line-number=\"55\"><\/td>\n<td id=\"LC55\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">case<\/span> SERVICE_CONTROL_STOP:<\/td>\n<\/tr>\n<tr>\n<td id=\"L56\" class=\"blob-num js-line-number\" data-line-number=\"56\"><\/td>\n<td id=\"LC56\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">OutputDebugString<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>TestApp stopped.<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L57\" class=\"blob-num js-line-number\" data-line-number=\"57\"><\/td>\n<td id=\"LC57\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwWin32ExitCode<\/span> = <span class=\"pl-c1\">0<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L58\" class=\"blob-num js-line-number\" data-line-number=\"58\"><\/td>\n<td id=\"LC58\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span> = SERVICE_STOPPED;<\/td>\n<\/tr>\n<tr>\n<td id=\"L59\" class=\"blob-num js-line-number\" data-line-number=\"59\"><\/td>\n<td id=\"LC59\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">SetServiceStatus<\/span>(hStatus, &amp;ServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L60\" class=\"blob-num js-line-number\" data-line-number=\"60\"><\/td>\n<td id=\"LC60\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L61\" class=\"blob-num js-line-number\" data-line-number=\"61\"><\/td>\n<td id=\"LC61\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">case<\/span> SERVICE_CONTROL_SHUTDOWN:<\/td>\n<\/tr>\n<tr>\n<td id=\"L62\" class=\"blob-num js-line-number\" data-line-number=\"62\"><\/td>\n<td id=\"LC62\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">OutputDebugString<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Test App Sropped<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L63\" class=\"blob-num js-line-number\" data-line-number=\"63\"><\/td>\n<td id=\"LC63\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span> = SERVICE_STOPPED;<\/td>\n<\/tr>\n<tr>\n<td id=\"L64\" class=\"blob-num js-line-number\" data-line-number=\"64\"><\/td>\n<td id=\"LC64\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">SetServiceStatus<\/span>(hStatus, &amp;ServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L65\" class=\"blob-num js-line-number\" data-line-number=\"65\"><\/td>\n<td id=\"LC65\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L66\" class=\"blob-num js-line-number\" data-line-number=\"66\"><\/td>\n<td id=\"LC66\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">default<\/span>:<\/td>\n<\/tr>\n<tr>\n<td id=\"L67\" class=\"blob-num js-line-number\" data-line-number=\"67\"><\/td>\n<td id=\"LC67\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">break<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L68\" class=\"blob-num js-line-number\" data-line-number=\"68\"><\/td>\n<td id=\"LC68\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L69\" class=\"blob-num js-line-number\" data-line-number=\"69\"><\/td>\n<td id=\"LC69\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L70\" class=\"blob-num js-line-number\" data-line-number=\"70\"><\/td>\n<td id=\"LC70\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">SetServiceStatus<\/span>(hStatus, &amp;ServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L71\" class=\"blob-num js-line-number\" data-line-number=\"71\"><\/td>\n<td id=\"LC71\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L72\" class=\"blob-num js-line-number\" data-line-number=\"72\"><\/td>\n<td id=\"LC72\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L73\" class=\"blob-num js-line-number\" data-line-number=\"73\"><\/td>\n<td id=\"LC73\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L74\" class=\"blob-num js-line-number\" data-line-number=\"74\"><\/td>\n<td id=\"LC74\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">ServiceMain<\/span>(<span class=\"pl-k\">int<\/span> argc, <span class=\"pl-k\">char<\/span>** argv)<\/td>\n<\/tr>\n<tr>\n<td id=\"L75\" class=\"blob-num js-line-number\" data-line-number=\"75\"><\/td>\n<td id=\"LC75\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L76\" class=\"blob-num js-line-number\" data-line-number=\"76\"><\/td>\n<td id=\"LC76\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwServiceType<\/span> = SERVICE_WIN32;<\/td>\n<\/tr>\n<tr>\n<td id=\"L77\" class=\"blob-num js-line-number\" data-line-number=\"77\"><\/td>\n<td id=\"LC77\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span> = SERVICE_START_PENDING;<\/td>\n<\/tr>\n<tr>\n<td id=\"L78\" class=\"blob-num js-line-number\" data-line-number=\"78\"><\/td>\n<td id=\"LC78\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwControlsAccepted<\/span> = SERVICE_ACCEPT_SHUTDOWN | SERVICE_ACCEPT_STOP;<\/td>\n<\/tr>\n<tr>\n<td id=\"L79\" class=\"blob-num js-line-number\" data-line-number=\"79\"><\/td>\n<td id=\"LC79\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwWin32ExitCode<\/span> = <span class=\"pl-c1\">0<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L80\" class=\"blob-num js-line-number\" data-line-number=\"80\"><\/td>\n<td id=\"LC80\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwServiceSpecificExitCode<\/span> = <span class=\"pl-c1\">0<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L81\" class=\"blob-num js-line-number\" data-line-number=\"81\"><\/td>\n<td id=\"LC81\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwCheckPoint<\/span> = <span class=\"pl-c1\">0<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L82\" class=\"blob-num js-line-number\" data-line-number=\"82\"><\/td>\n<td id=\"LC82\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwWaitHint<\/span> = <span class=\"pl-c1\">0<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L83\" class=\"blob-num js-line-number\" data-line-number=\"83\"><\/td>\n<td id=\"LC83\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L84\" class=\"blob-num js-line-number\" data-line-number=\"84\"><\/td>\n<td id=\"LC84\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u6ce8\u518c\u670d\u52a1\u63a7\u5236\u51fd\u6570 *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L85\" class=\"blob-num js-line-number\" data-line-number=\"85\"><\/td>\n<td id=\"LC85\" class=\"blob-code blob-code-inner js-file-line\">hStatus = <span class=\"pl-c1\">RegisterServiceCtrlHandler<\/span>(serviceName, (LPHANDLER_FUNCTION)ControlHandler);<\/td>\n<\/tr>\n<tr>\n<td id=\"L86\" class=\"blob-num js-line-number\" data-line-number=\"86\"><\/td>\n<td id=\"LC86\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L87\" class=\"blob-num js-line-number\" data-line-number=\"87\"><\/td>\n<td id=\"LC87\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u5982\u679c\u6ce8\u518c\u5931\u8d25\uff0c\u670d\u52a1\u76f4\u63a5\u9000\u51fa *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L88\" class=\"blob-num js-line-number\" data-line-number=\"88\"><\/td>\n<td id=\"LC88\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (hStatus == (SERVICE_STATUS_HANDLE)<span class=\"pl-c1\">0<\/span>)<\/td>\n<\/tr>\n<tr>\n<td id=\"L89\" class=\"blob-num js-line-number\" data-line-number=\"89\"><\/td>\n<td id=\"LC89\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L90\" class=\"blob-num js-line-number\" data-line-number=\"90\"><\/td>\n<td id=\"LC90\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">OutputDebugString<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Register Service Control Handler<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L91\" class=\"blob-num js-line-number\" data-line-number=\"91\"><\/td>\n<td id=\"LC91\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L92\" class=\"blob-num js-line-number\" data-line-number=\"92\"><\/td>\n<td id=\"LC92\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L93\" class=\"blob-num js-line-number\" data-line-number=\"93\"><\/td>\n<td id=\"LC93\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L94\" class=\"blob-num js-line-number\" data-line-number=\"94\"><\/td>\n<td id=\"LC94\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/\/\u5411SCM\u62a5\u544a\u8fd0\u884c\u72b6\u6001<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L95\" class=\"blob-num js-line-number\" data-line-number=\"95\"><\/td>\n<td id=\"LC95\" class=\"blob-code blob-code-inner js-file-line\">ServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span> = SERVICE_RUNNING;<\/td>\n<\/tr>\n<tr>\n<td id=\"L96\" class=\"blob-num js-line-number\" data-line-number=\"96\"><\/td>\n<td id=\"LC96\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">SetServiceStatus<\/span>(hStatus, &amp;ServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L97\" class=\"blob-num js-line-number\" data-line-number=\"97\"><\/td>\n<td id=\"LC97\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L98\" class=\"blob-num js-line-number\" data-line-number=\"98\"><\/td>\n<td id=\"LC98\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">while<\/span> (ServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span> == SERVICE_RUNNING)<\/td>\n<\/tr>\n<tr>\n<td id=\"L99\" class=\"blob-num js-line-number\" data-line-number=\"99\"><\/td>\n<td id=\"LC99\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L100\" class=\"blob-num js-line-number\" data-line-number=\"100\"><\/td>\n<td id=\"LC100\" class=\"blob-code blob-code-inner js-file-line\">COleDateTime curTime = <span class=\"pl-c1\">COleDateTime::GetCurrentTime<\/span>();<\/td>\n<\/tr>\n<tr>\n<td id=\"L101\" class=\"blob-num js-line-number\" data-line-number=\"101\"><\/td>\n<td id=\"LC101\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L102\" class=\"blob-num js-line-number\" data-line-number=\"102\"><\/td>\n<td id=\"LC102\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u5ef6\u540e\u65f6\u95f4\u53d8\u91cf *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L103\" class=\"blob-num js-line-number\" data-line-number=\"103\"><\/td>\n<td id=\"LC103\" class=\"blob-code blob-code-inner js-file-line\">COleDateTimeSpan interval;<\/td>\n<\/tr>\n<tr>\n<td id=\"L104\" class=\"blob-num js-line-number\" data-line-number=\"104\"><\/td>\n<td id=\"LC104\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L105\" class=\"blob-num js-line-number\" data-line-number=\"105\"><\/td>\n<td id=\"LC105\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/*\u6d4b\u8bd5\u7684\u65f6\u5019\u5ef6\u540e\u7684\u5929\u6570\u4e3a\u5f53\u524d\u79d2\u6570\u7684\u4e00\u534a\uff0c\u521a\u597d\u4e0d\u4f1a\u8d85\u8fc730\u5929,\u6ce8\u610f\u907f\u514d\u4e3a0\u7684\u60c5\u51b5*\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L106\" class=\"blob-num js-line-number\" data-line-number=\"106\"><\/td>\n<td id=\"LC106\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/*<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L107\" class=\"blob-num js-line-number\" data-line-number=\"107\"><\/td>\n<td id=\"LC107\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> int days = destTime.GetSecond() \/ 2;<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L108\" class=\"blob-num js-line-number\" data-line-number=\"108\"><\/td>\n<td id=\"LC108\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> if (days == 0)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L109\" class=\"blob-num js-line-number\" data-line-number=\"109\"><\/td>\n<td id=\"LC109\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> {<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L110\" class=\"blob-num js-line-number\" data-line-number=\"110\"><\/td>\n<td id=\"LC110\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> days = 1;<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L111\" class=\"blob-num js-line-number\" data-line-number=\"111\"><\/td>\n<td id=\"LC111\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> }*\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L112\" class=\"blob-num js-line-number\" data-line-number=\"112\"><\/td>\n<td id=\"LC112\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L113\" class=\"blob-num js-line-number\" data-line-number=\"113\"><\/td>\n<td id=\"LC113\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u53d1\u5e03\u7248\u672c\u662f\u5ef6\u540e20\u5929\uff0c\u6ce8\u610f\u5c11\u4e8e\u5341\u5929\u7684\u8bdd\u6bcf\u6b21\u7f16\u8bd1\u4f1a\u5f39\u51fa\u8bd5\u7528\u671f\u5c06\u8fc7\u7684\u8b66\u544a *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L114\" class=\"blob-num js-line-number\" data-line-number=\"114\"><\/td>\n<td id=\"LC114\" class=\"blob-code blob-code-inner js-file-line\">interval.<span class=\"pl-c1\">SetDateTimeSpan<\/span>( <span class=\"pl-c1\">20<\/span>, <span class=\"pl-c1\">0<\/span>, <span class=\"pl-c1\">0<\/span>, <span class=\"pl-c1\">0<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L115\" class=\"blob-num js-line-number\" data-line-number=\"115\"><\/td>\n<td id=\"LC115\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L116\" class=\"blob-num js-line-number\" data-line-number=\"116\"><\/td>\n<td id=\"LC116\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (curTime.<span class=\"pl-c1\">GetHour<\/span>() == <span class=\"pl-c1\">18<\/span> &amp;&amp; curTime.<span class=\"pl-c1\">GetMinute<\/span>() == <span class=\"pl-c1\">30<\/span> &amp;&amp; curTime.<span class=\"pl-c1\">GetSecond<\/span>() == <span class=\"pl-c1\">0<\/span>)<\/td>\n<\/tr>\n<tr>\n<td id=\"L117\" class=\"blob-num js-line-number\" data-line-number=\"117\"><\/td>\n<td id=\"LC117\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L118\" class=\"blob-num js-line-number\" data-line-number=\"118\"><\/td>\n<td id=\"LC118\" class=\"blob-code blob-code-inner js-file-line\">COleDateTime destTime;<\/td>\n<\/tr>\n<tr>\n<td id=\"L119\" class=\"blob-num js-line-number\" data-line-number=\"119\"><\/td>\n<td id=\"LC119\" class=\"blob-code blob-code-inner js-file-line\">destTime = curTime + interval;<\/td>\n<\/tr>\n<tr>\n<td id=\"L120\" class=\"blob-num js-line-number\" data-line-number=\"120\"><\/td>\n<td id=\"LC120\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L121\" class=\"blob-num js-line-number\" data-line-number=\"121\"><\/td>\n<td id=\"LC121\" class=\"blob-code blob-code-inner js-file-line\">COleDateTime <span class=\"pl-smi\">dateTime<\/span>(destTime.<span class=\"pl-c1\">GetYear<\/span>(), destTime.<span class=\"pl-c1\">GetMonth<\/span>(), destTime.<span class=\"pl-c1\">GetDay<\/span>(), destTime.<span class=\"pl-c1\">GetHour<\/span>(), destTime.<span class=\"pl-c1\">GetMinute<\/span>(), destTime.<span class=\"pl-c1\">GetSecond<\/span>());<\/td>\n<\/tr>\n<tr>\n<td id=\"L122\" class=\"blob-num js-line-number\" data-line-number=\"122\"><\/td>\n<td id=\"LC122\" class=\"blob-code blob-code-inner js-file-line\">DATE Date = (DATE)dateTime;<\/td>\n<\/tr>\n<tr>\n<td id=\"L123\" class=\"blob-num js-line-number\" data-line-number=\"123\"><\/td>\n<td id=\"LC123\" class=\"blob-code blob-code-inner js-file-line\">string dateStr = <span class=\"pl-c1\">GetIncrediBuildLicKey<\/span>(Date);<\/td>\n<\/tr>\n<tr>\n<td id=\"L124\" class=\"blob-num js-line-number\" data-line-number=\"124\"><\/td>\n<td id=\"LC124\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">setKeyValue<\/span>(dateStr);<\/td>\n<\/tr>\n<tr>\n<td id=\"L125\" class=\"blob-num js-line-number\" data-line-number=\"125\"><\/td>\n<td id=\"LC125\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L126\" class=\"blob-num js-line-number\" data-line-number=\"126\"><\/td>\n<td id=\"LC126\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L127\" class=\"blob-num js-line-number\" data-line-number=\"127\"><\/td>\n<td id=\"LC127\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L128\" class=\"blob-num js-line-number\" data-line-number=\"128\"><\/td>\n<td id=\"LC128\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/*<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L129\" class=\"blob-num js-line-number\" data-line-number=\"129\"><\/td>\n<td id=\"LC129\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> SYSTEMTIME lpsystemtime;<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L130\" class=\"blob-num js-line-number\" data-line-number=\"130\"><\/td>\n<td id=\"LC130\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> GetLocalTime(&amp;lpsystemtime);<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L131\" class=\"blob-num js-line-number\" data-line-number=\"131\"><\/td>\n<td id=\"LC131\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> while (ServiceStatus.dwCurrentState == SERVICE_RUNNING)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L132\" class=\"blob-num js-line-number\" data-line-number=\"132\"><\/td>\n<td id=\"LC132\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> {<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L133\" class=\"blob-num js-line-number\" data-line-number=\"133\"><\/td>\n<td id=\"LC133\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> \/\/Sleep(1000*60*59);<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L134\" class=\"blob-num js-line-number\" data-line-number=\"134\"><\/td>\n<td id=\"LC134\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> if (lpsystemtime.wHour == 1)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L135\" class=\"blob-num js-line-number\" data-line-number=\"135\"><\/td>\n<td id=\"LC135\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> {<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L136\" class=\"blob-num js-line-number\" data-line-number=\"136\"><\/td>\n<td id=\"LC136\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> bool res = stopTargetService();<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L137\" class=\"blob-num js-line-number\" data-line-number=\"137\"><\/td>\n<td id=\"LC137\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> if (!res)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L138\" class=\"blob-num js-line-number\" data-line-number=\"138\"><\/td>\n<td id=\"LC138\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> {<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L139\" class=\"blob-num js-line-number\" data-line-number=\"139\"><\/td>\n<td id=\"LC139\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> OutputDebugString(&#8220;Can not stop service.&#8221;);<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L140\" class=\"blob-num js-line-number\" data-line-number=\"140\"><\/td>\n<td id=\"LC140\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> }<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L141\" class=\"blob-num js-line-number\" data-line-number=\"141\"><\/td>\n<td id=\"LC141\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L142\" class=\"blob-num js-line-number\" data-line-number=\"142\"><\/td>\n<td id=\"LC142\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> res = startTargetService();<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L143\" class=\"blob-num js-line-number\" data-line-number=\"143\"><\/td>\n<td id=\"LC143\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> while (true)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L144\" class=\"blob-num js-line-number\" data-line-number=\"144\"><\/td>\n<td id=\"LC144\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> {<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L145\" class=\"blob-num js-line-number\" data-line-number=\"145\"><\/td>\n<td id=\"LC145\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L146\" class=\"blob-num js-line-number\" data-line-number=\"146\"><\/td>\n<td id=\"LC146\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> } <\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L147\" class=\"blob-num js-line-number\" data-line-number=\"147\"><\/td>\n<td id=\"LC147\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> if (!res)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L148\" class=\"blob-num js-line-number\" data-line-number=\"148\"><\/td>\n<td id=\"LC148\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> {<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L149\" class=\"blob-num js-line-number\" data-line-number=\"149\"><\/td>\n<td id=\"LC149\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> OutputDebugString(&#8220;Can not start service.&#8221;);<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L150\" class=\"blob-num js-line-number\" data-line-number=\"150\"><\/td>\n<td id=\"LC150\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> }<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L151\" class=\"blob-num js-line-number\" data-line-number=\"151\"><\/td>\n<td id=\"LC151\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> }<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L152\" class=\"blob-num js-line-number\" data-line-number=\"152\"><\/td>\n<td id=\"LC152\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L153\" class=\"blob-num js-line-number\" data-line-number=\"153\"><\/td>\n<td id=\"LC153\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> }<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L154\" class=\"blob-num js-line-number\" data-line-number=\"154\"><\/td>\n<td id=\"LC154\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L155\" class=\"blob-num js-line-number\" data-line-number=\"155\"><\/td>\n<td id=\"LC155\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L156\" class=\"blob-num js-line-number\" data-line-number=\"156\"><\/td>\n<td id=\"LC156\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L157\" class=\"blob-num js-line-number\" data-line-number=\"157\"><\/td>\n<td id=\"LC157\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L158\" class=\"blob-num js-line-number\" data-line-number=\"158\"><\/td>\n<td id=\"LC158\" class=\"blob-code blob-code-inner js-file-line\">string <span class=\"pl-en\">GetIncrediBuildLicKey<\/span>(DATE date)<\/td>\n<\/tr>\n<tr>\n<td id=\"L159\" class=\"blob-num js-line-number\" data-line-number=\"159\"><\/td>\n<td id=\"LC159\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L160\" class=\"blob-num js-line-number\" data-line-number=\"160\"><\/td>\n<td id=\"LC160\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/*<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L161\" class=\"blob-num js-line-number\" data-line-number=\"161\"><\/td>\n<td id=\"LC161\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> IncrediBuild \u8bd5\u7528\u671f\u63a8\u540e\u7b97\u6cd5<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L162\" class=\"blob-num js-line-number\" data-line-number=\"162\"><\/td>\n<td id=\"LC162\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> \u6ce8\u610f\uff1aIncredibuild\u5224\u65ad\u8fc7\u671f\u662f\u6309\u7167\u5b89\u88c5\u65e5\u671f\u4e0e\u73b0\u5728\u65f6\u95f4\u95f4\u9694\u7684\u7edd\u5bf9\u503c\u6765\u8fdb\u884c\u8ba1\u7b97\u7684\uff0c\u6240\u4ee5\u9700\u8981\u4e0d\u65ad\u66f4\u65b0\u5b89\u88c5\u65f6\u95f4\u6765\u4fdd\u8bc1\u4e0d\u8fc7\u671f<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L163\" class=\"blob-num js-line-number\" data-line-number=\"163\"><\/td>\n<td id=\"LC163\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L164\" class=\"blob-num js-line-number\" data-line-number=\"164\"><\/td>\n<td id=\"LC164\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> \u4e0d\u540c\u7248\u672c\u4fdd\u5b58\u8fc7\u671f\u65f6\u95f4\u7684\u6ce8\u518c\u8868\u952e\u7684\u4f4d\u7f6e\u662f\u4e0d\u540c\u7684:<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L165\" class=\"blob-num js-line-number\" data-line-number=\"165\"><\/td>\n<td id=\"LC165\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> 2.40: HKCR\\Interface\\{E9B0227F-437C-4F7A-86D9-2676B83F359F}\\ProxyStubClsid32 = {M1-M2-M3-T1-T2}<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L166\" class=\"blob-num js-line-number\" data-line-number=\"166\"><\/td>\n<td id=\"LC166\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> 3.20: HKCR\\Interface\\{B7348B5D-B65D-4BF5-AF63-A3135249ACA7}\\ProxyStubClsid32 = {M1-M2-M3-T1-T2}<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L167\" class=\"blob-num js-line-number\" data-line-number=\"167\"><\/td>\n<td id=\"LC167\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> 3.31: HKCR\\Interface\\{6F8793A7-3226-4B51-98C1-476A0D1A7AFC}\\ProxyStubClsid32<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L168\" class=\"blob-num js-line-number\" data-line-number=\"168\"><\/td>\n<td id=\"LC168\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> 3.40: HKCR\\Interface\\{48C6296A-4F4C-4238-A9E1-60E9A544A863}\\ProxyStubClsid32 <\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L169\" class=\"blob-num js-line-number\" data-line-number=\"169\"><\/td>\n<td id=\"LC169\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L170\" class=\"blob-num js-line-number\" data-line-number=\"170\"><\/td>\n<td id=\"LC170\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> \u5047\u8bbe\u6b64\u65f6 Date \u7684\u503c\u662f 39598.999988425923 (0x37BA E7FFDF55E340)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L171\" class=\"blob-num js-line-number\" data-line-number=\"171\"><\/td>\n<td id=\"LC171\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L172\" class=\"blob-num js-line-number\" data-line-number=\"172\"><\/td>\n<td id=\"LC172\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> T1 = 37BA<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L173\" class=\"blob-num js-line-number\" data-line-number=\"173\"><\/td>\n<td id=\"LC173\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> T2 = E7FFDF55E340<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L174\" class=\"blob-num js-line-number\" data-line-number=\"174\"><\/td>\n<td id=\"LC174\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> M1 = 37 * BA * E7 * FF = 23EAEB06<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L175\" class=\"blob-num js-line-number\" data-line-number=\"175\"><\/td>\n<td id=\"LC175\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> M2 = DF * 55 = 4A0B<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L176\" class=\"blob-num js-line-number\" data-line-number=\"176\"><\/td>\n<td id=\"LC176\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> M3 = E3 * 40 = 38C0<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L177\" class=\"blob-num js-line-number\" data-line-number=\"177\"><\/td>\n<td id=\"LC177\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L178\" class=\"blob-num js-line-number\" data-line-number=\"178\"><\/td>\n<td id=\"LC178\" class=\"blob-code blob-code-inner js-file-line\">BYTE * pByte = (BYTE *)&amp;date;<\/td>\n<\/tr>\n<tr>\n<td id=\"L179\" class=\"blob-num js-line-number\" data-line-number=\"179\"><\/td>\n<td id=\"LC179\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L180\" class=\"blob-num js-line-number\" data-line-number=\"180\"><\/td>\n<td id=\"LC180\" class=\"blob-code blob-code-inner js-file-line\">BYTE * T1 = (BYTE *) (pByte);<\/td>\n<\/tr>\n<tr>\n<td id=\"L181\" class=\"blob-num js-line-number\" data-line-number=\"181\"><\/td>\n<td id=\"LC181\" class=\"blob-code blob-code-inner js-file-line\">BYTE * T2 = (BYTE *) (pByte + <span class=\"pl-c1\">2<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L182\" class=\"blob-num js-line-number\" data-line-number=\"182\"><\/td>\n<td id=\"LC182\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L183\" class=\"blob-num js-line-number\" data-line-number=\"183\"><\/td>\n<td id=\"LC183\" class=\"blob-code blob-code-inner js-file-line\">DWORD dwM1 = (DWORD) *pByte;<\/td>\n<\/tr>\n<tr>\n<td id=\"L184\" class=\"blob-num js-line-number\" data-line-number=\"184\"><\/td>\n<td id=\"LC184\" class=\"blob-code blob-code-inner js-file-line\">dwM1 *= (DWORD) *(pByte + <span class=\"pl-c1\">1<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L185\" class=\"blob-num js-line-number\" data-line-number=\"185\"><\/td>\n<td id=\"LC185\" class=\"blob-code blob-code-inner js-file-line\">dwM1 *= (DWORD) *(pByte + <span class=\"pl-c1\">2<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L186\" class=\"blob-num js-line-number\" data-line-number=\"186\"><\/td>\n<td id=\"LC186\" class=\"blob-code blob-code-inner js-file-line\">dwM1 *= (DWORD) *(pByte + <span class=\"pl-c1\">3<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L187\" class=\"blob-num js-line-number\" data-line-number=\"187\"><\/td>\n<td id=\"LC187\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L188\" class=\"blob-num js-line-number\" data-line-number=\"188\"><\/td>\n<td id=\"LC188\" class=\"blob-code blob-code-inner js-file-line\">WORD wM2 = (WORD) *(pByte + <span class=\"pl-c1\">4<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L189\" class=\"blob-num js-line-number\" data-line-number=\"189\"><\/td>\n<td id=\"LC189\" class=\"blob-code blob-code-inner js-file-line\">wM2 *= (WORD) *(pByte + <span class=\"pl-c1\">5<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L190\" class=\"blob-num js-line-number\" data-line-number=\"190\"><\/td>\n<td id=\"LC190\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L191\" class=\"blob-num js-line-number\" data-line-number=\"191\"><\/td>\n<td id=\"LC191\" class=\"blob-code blob-code-inner js-file-line\">WORD wM3 = (WORD) *(pByte + <span class=\"pl-c1\">6<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L192\" class=\"blob-num js-line-number\" data-line-number=\"192\"><\/td>\n<td id=\"LC192\" class=\"blob-code blob-code-inner js-file-line\">wM3 *= (WORD) *(pByte + <span class=\"pl-c1\">7<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L193\" class=\"blob-num js-line-number\" data-line-number=\"193\"><\/td>\n<td id=\"LC193\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L194\" class=\"blob-num js-line-number\" data-line-number=\"194\"><\/td>\n<td id=\"LC194\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">char<\/span> ch[<span class=\"pl-c1\">1000<\/span>];<\/td>\n<\/tr>\n<tr>\n<td id=\"L195\" class=\"blob-num js-line-number\" data-line-number=\"195\"><\/td>\n<td id=\"LC195\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/************************************************************************\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L196\" class=\"blob-num js-line-number\" data-line-number=\"196\"><\/td>\n<td id=\"LC196\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* {%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X} \u6ce8\u518c\u8868\u952e\u503c\u7684\u683c\u5f0f *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L197\" class=\"blob-num js-line-number\" data-line-number=\"197\"><\/td>\n<td id=\"LC197\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/************************************************************************\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L198\" class=\"blob-num js-line-number\" data-line-number=\"198\"><\/td>\n<td id=\"LC198\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">sprintf_s<\/span>(ch,<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}<span class=\"pl-pds\">&#8220;<\/span><\/span>, dwM1, wM2, wM3, *T1, *(T1+<span class=\"pl-c1\">1<\/span>), *T2, *(T2+<span class=\"pl-c1\">1<\/span>), *(T2+<span class=\"pl-c1\">2<\/span>), *(T2+<span class=\"pl-c1\">3<\/span>), *(T2+<span class=\"pl-c1\">4<\/span>), *(T2+<span class=\"pl-c1\">5<\/span>));<\/td>\n<\/tr>\n<tr>\n<td id=\"L199\" class=\"blob-num js-line-number\" data-line-number=\"199\"><\/td>\n<td id=\"LC199\" class=\"blob-code blob-code-inner js-file-line\">string <span class=\"pl-smi\">tempStr<\/span>(ch);<\/td>\n<\/tr>\n<tr>\n<td id=\"L200\" class=\"blob-num js-line-number\" data-line-number=\"200\"><\/td>\n<td id=\"LC200\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> tempStr;<\/td>\n<\/tr>\n<tr>\n<td id=\"L201\" class=\"blob-num js-line-number\" data-line-number=\"201\"><\/td>\n<td id=\"LC201\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L202\" class=\"blob-num js-line-number\" data-line-number=\"202\"><\/td>\n<td id=\"LC202\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L203\" class=\"blob-num js-line-number\" data-line-number=\"203\"><\/td>\n<td id=\"LC203\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">setKeyValue<\/span>(string keyValue)<\/td>\n<\/tr>\n<tr>\n<td id=\"L204\" class=\"blob-num js-line-number\" data-line-number=\"204\"><\/td>\n<td id=\"LC204\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L205\" class=\"blob-num js-line-number\" data-line-number=\"205\"><\/td>\n<td id=\"LC205\" class=\"blob-code blob-code-inner js-file-line\">HKEY hKey;<\/td>\n<\/tr>\n<tr>\n<td id=\"L206\" class=\"blob-num js-line-number\" data-line-number=\"206\"><\/td>\n<td id=\"LC206\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L207\" class=\"blob-num js-line-number\" data-line-number=\"207\"><\/td>\n<td id=\"LC207\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/************************************************************************\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L208\" class=\"blob-num js-line-number\" data-line-number=\"208\"><\/td>\n<td id=\"LC208\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* data_set\u662f5.0\u7248\u672c\u8bb0\u5f55\u521d\u6b21\u5b89\u88c5\u65f6\u95f4\u952e\u503c\u6240\u5728\u8def\u5f84\uff0c\u6bcf\u4e2a\u7248\u672c\u7684\u4f4d\u7f6e\u90fd\u4e0d\u4e00\u6837\u3002\u8981\u627e\u8fd9 *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L209\" class=\"blob-num js-line-number\" data-line-number=\"209\"><\/td>\n<td id=\"LC209\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u4e2a\u503c\u5f97\u4f4d\u7f6e\u4e5f\u4e0d\u96be\uff0c\u4f7f\u7528\u4e00\u4e2a\u53eb Process Monitor\uff08\u5fae\u8f6f\u51fa\u54c1\uff0c\u80af\u4e0d\u662f\u7cbe\u54c1\uff0c\u4e0d\u8fc7\u8fd8\u662f *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L210\" class=\"blob-num js-line-number\" data-line-number=\"210\"><\/td>\n<td id=\"LC210\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u80fd\u7528\u7684^_^\uff09\u7684\u8f6f\u4ef6\u76d1\u89c6Incredibuild\u5728\u5b89\u88c5\u8fc7\u7a0b\u4e2d\u66f4\u6539\u7684\u6ce8\u518c\u8868\u952e\u503c\uff0c\u641c\u7d22 *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L211\" class=\"blob-num js-line-number\" data-line-number=\"211\"><\/td>\n<td id=\"LC211\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* ProxyStubClsid32\uff0c\u51fa\u73b0\u6bd4\u8f83\u591a\u7684\u9879\u4e00\u822c\u5c31\u662f\u4e86 *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L212\" class=\"blob-num js-line-number\" data-line-number=\"212\"><\/td>\n<td id=\"LC212\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/************************************************************************\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L213\" class=\"blob-num js-line-number\" data-line-number=\"213\"><\/td>\n<td id=\"LC213\" class=\"blob-code blob-code-inner js-file-line\">LPCTSTR data_Set = <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Wow6432Node<span class=\"pl-cce\">\\\\<\/span>Interface<span class=\"pl-cce\">\\\\<\/span>{1E4B9266-71AC-499E-8875-C22E4D301367}<span class=\"pl-cce\">\\\\<\/span>ProxyStubClsid32<span class=\"pl-pds\">&#8220;<\/span><\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L214\" class=\"blob-num js-line-number\" data-line-number=\"214\"><\/td>\n<td id=\"LC214\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (::<span class=\"pl-c1\">RegOpenKeyEx<\/span>(HKEY_CLASSES_ROOT, data_Set, <span class=\"pl-c1\">0<\/span>, KEY_ALL_ACCESS, &amp;hKey) != ERROR_SUCCESS)<\/td>\n<\/tr>\n<tr>\n<td id=\"L215\" class=\"blob-num js-line-number\" data-line-number=\"215\"><\/td>\n<td id=\"LC215\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L216\" class=\"blob-num js-line-number\" data-line-number=\"216\"><\/td>\n<td id=\"LC216\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Open Key Error<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L217\" class=\"blob-num js-line-number\" data-line-number=\"217\"><\/td>\n<td id=\"LC217\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L218\" class=\"blob-num js-line-number\" data-line-number=\"218\"><\/td>\n<td id=\"LC218\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L219\" class=\"blob-num js-line-number\" data-line-number=\"219\"><\/td>\n<td id=\"LC219\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L220\" class=\"blob-num js-line-number\" data-line-number=\"220\"><\/td>\n<td id=\"LC220\" class=\"blob-code blob-code-inner js-file-line\">TCHAR res[MAX_PATH];<span class=\"pl-c\">\/\/=new BYTE[MAX_PATH];<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L221\" class=\"blob-num js-line-number\" data-line-number=\"221\"><\/td>\n<td id=\"LC221\" class=\"blob-code blob-code-inner js-file-line\">DWORD type_1 = REG_SZ;<\/td>\n<\/tr>\n<tr>\n<td id=\"L222\" class=\"blob-num js-line-number\" data-line-number=\"222\"><\/td>\n<td id=\"LC222\" class=\"blob-code blob-code-inner js-file-line\">DWORD cbData_1 = MAX_PATH;<\/td>\n<\/tr>\n<tr>\n<td id=\"L223\" class=\"blob-num js-line-number\" data-line-number=\"223\"><\/td>\n<td id=\"LC223\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u8bfb\u53d6\u6570\u636e<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L224\" class=\"blob-num js-line-number\" data-line-number=\"224\"><\/td>\n<td id=\"LC224\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L225\" class=\"blob-num js-line-number\" data-line-number=\"225\"><\/td>\n<td id=\"LC225\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> if (RegQueryValueEx(hKey, L&#8221;&#8221;, NULL, &amp;type_1, (LPBYTE)res, &amp;cbData_1) != ERROR_SUCCESS)<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L226\" class=\"blob-num js-line-number\" data-line-number=\"226\"><\/td>\n<td id=\"LC226\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> {<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L227\" class=\"blob-num js-line-number\" data-line-number=\"227\"><\/td>\n<td id=\"LC227\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> cout &lt;&lt; &#8220;read error&#8221; &lt;&lt; endl;<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L228\" class=\"blob-num js-line-number\" data-line-number=\"228\"><\/td>\n<td id=\"LC228\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> return;<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L229\" class=\"blob-num js-line-number\" data-line-number=\"229\"><\/td>\n<td id=\"LC229\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> }<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L230\" class=\"blob-num js-line-number\" data-line-number=\"230\"><\/td>\n<td id=\"LC230\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\"> *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L231\" class=\"blob-num js-line-number\" data-line-number=\"231\"><\/td>\n<td id=\"LC231\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L232\" class=\"blob-num js-line-number\" data-line-number=\"232\"><\/td>\n<td id=\"LC232\" class=\"blob-code blob-code-inner js-file-line\">LPCTSTR data = keyValue.<span class=\"pl-c1\">c_str<\/span>();<\/td>\n<\/tr>\n<tr>\n<td id=\"L233\" class=\"blob-num js-line-number\" data-line-number=\"233\"><\/td>\n<td id=\"LC233\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L234\" class=\"blob-num js-line-number\" data-line-number=\"234\"><\/td>\n<td id=\"LC234\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L235\" class=\"blob-num js-line-number\" data-line-number=\"235\"><\/td>\n<td id=\"LC235\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u5373\u4f7f\u4fee\u6539\u6210\u529f\u4e5f\u662f\u8fd4\u56de\u9519\u8bef\uff0c\u65e0\u6cd5\u5224\u65ad\uff0c\u7559\u5f85\u540e\u4eba\u7814\u7a76\u7528 *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L236\" class=\"blob-num js-line-number\" data-line-number=\"236\"><\/td>\n<td id=\"LC236\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-en\">::RegSetValueEx<\/span>(hKey, <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span><span class=\"pl-pds\">&#8220;<\/span><\/span>, <span class=\"pl-c1\">0<\/span>, REG_SZ, (LPBYTE)data, 100) != ERROR_SUCCESS;<\/td>\n<\/tr>\n<tr>\n<td id=\"L237\" class=\"blob-num js-line-number\" data-line-number=\"237\"><\/td>\n<td id=\"LC237\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L238\" class=\"blob-num js-line-number\" data-line-number=\"238\"><\/td>\n<td id=\"LC238\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (<span class=\"pl-c1\">RegQueryValueEx<\/span>(hKey, <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span><span class=\"pl-pds\">&#8220;<\/span><\/span>, <span class=\"pl-c1\">NULL<\/span>, &amp;type_1, (LPBYTE)res, &amp;cbData_1) != ERROR_SUCCESS)<\/td>\n<\/tr>\n<tr>\n<td id=\"L239\" class=\"blob-num js-line-number\" data-line-number=\"239\"><\/td>\n<td id=\"LC239\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L240\" class=\"blob-num js-line-number\" data-line-number=\"240\"><\/td>\n<td id=\"LC240\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Read value error<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L241\" class=\"blob-num js-line-number\" data-line-number=\"241\"><\/td>\n<td id=\"LC241\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L242\" class=\"blob-num js-line-number\" data-line-number=\"242\"><\/td>\n<td id=\"LC242\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L243\" class=\"blob-num js-line-number\" data-line-number=\"243\"><\/td>\n<td id=\"LC243\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L244\" class=\"blob-num js-line-number\" data-line-number=\"244\"><\/td>\n<td id=\"LC244\" class=\"blob-code blob-code-inner js-file-line\">string <span class=\"pl-smi\">tempStr<\/span>(res);<\/td>\n<\/tr>\n<tr>\n<td id=\"L245\" class=\"blob-num js-line-number\" data-line-number=\"245\"><\/td>\n<td id=\"LC245\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Set value: <span class=\"pl-pds\">&#8220;<\/span><\/span> + tempStr);<\/td>\n<\/tr>\n<tr>\n<td id=\"L246\" class=\"blob-num js-line-number\" data-line-number=\"246\"><\/td>\n<td id=\"LC246\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L247\" class=\"blob-num js-line-number\" data-line-number=\"247\"><\/td>\n<td id=\"LC247\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-en\">::RegCloseKey<\/span>(hKey);<\/td>\n<\/tr>\n<tr>\n<td id=\"L248\" class=\"blob-num js-line-number\" data-line-number=\"248\"><\/td>\n<td id=\"LC248\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L249\" class=\"blob-num js-line-number\" data-line-number=\"249\"><\/td>\n<td id=\"LC249\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L250\" class=\"blob-num js-line-number\" data-line-number=\"250\"><\/td>\n<td id=\"LC250\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L251\" class=\"blob-num js-line-number\" data-line-number=\"251\"><\/td>\n<td id=\"LC251\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u57285.0\u4e4b\u524d\u7684\u7248\u672c\u7834\u89e3\u4e2d\u5e76\u6ca1\u6709\u4f7f\u7528\u6b64\u51fd\u6570\uff0c\u7559\u7ed9\u4e0b\u4e00\u4e2a\u82e6\u903c\u7a0b\u65ed\u733f\u4f5c\u4e3a\u53c2\u8003^_^ *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L252\" class=\"blob-num js-line-number\" data-line-number=\"252\"><\/td>\n<td id=\"LC252\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> <span class=\"pl-en\">stopTargetService<\/span>()<\/td>\n<\/tr>\n<tr>\n<td id=\"L253\" class=\"blob-num js-line-number\" data-line-number=\"253\"><\/td>\n<td id=\"LC253\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L254\" class=\"blob-num js-line-number\" data-line-number=\"254\"><\/td>\n<td id=\"LC254\" class=\"blob-code blob-code-inner js-file-line\">SC_HANDLE hSCM, TargetService;<\/td>\n<\/tr>\n<tr>\n<td id=\"L255\" class=\"blob-num js-line-number\" data-line-number=\"255\"><\/td>\n<td id=\"LC255\" class=\"blob-code blob-code-inner js-file-line\">SERVICE_STATUS targetServiceStatus;<\/td>\n<\/tr>\n<tr>\n<td id=\"L256\" class=\"blob-num js-line-number\" data-line-number=\"256\"><\/td>\n<td id=\"LC256\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> success = <span class=\"pl-c1\">false<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L257\" class=\"blob-num js-line-number\" data-line-number=\"257\"><\/td>\n<td id=\"LC257\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L258\" class=\"blob-num js-line-number\" data-line-number=\"258\"><\/td>\n<td id=\"LC258\" class=\"blob-code blob-code-inner js-file-line\">hSCM = <span class=\"pl-c1\">OpenSCManager<\/span>(<span class=\"pl-c1\">NULL<\/span>, <span class=\"pl-c1\">NULL<\/span>, SC_MANAGER_ENUMERATE_SERVICE | SC_MANAGER_CREATE_SERVICE);<\/td>\n<\/tr>\n<tr>\n<td id=\"L259\" class=\"blob-num js-line-number\" data-line-number=\"259\"><\/td>\n<td id=\"LC259\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (!hSCM)<\/td>\n<\/tr>\n<tr>\n<td id=\"L260\" class=\"blob-num js-line-number\" data-line-number=\"260\"><\/td>\n<td id=\"LC260\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L261\" class=\"blob-num js-line-number\" data-line-number=\"261\"><\/td>\n<td id=\"LC261\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">OutputDebugString<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Open SCManager failed.<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L262\" class=\"blob-num js-line-number\" data-line-number=\"262\"><\/td>\n<td id=\"LC262\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> <span class=\"pl-c1\">false<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L263\" class=\"blob-num js-line-number\" data-line-number=\"263\"><\/td>\n<td id=\"LC263\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L264\" class=\"blob-num js-line-number\" data-line-number=\"264\"><\/td>\n<td id=\"LC264\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L265\" class=\"blob-num js-line-number\" data-line-number=\"265\"><\/td>\n<td id=\"LC265\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/\/AppService = CreateService(hSCM, serviceName, serviceName, SERVICE_ALL_ACCESS | SERVICE_STOP, SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, SERVICE_ERROR_NORMAL, )<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L266\" class=\"blob-num js-line-number\" data-line-number=\"266\"><\/td>\n<td id=\"LC266\" class=\"blob-code blob-code-inner js-file-line\">TargetService = <span class=\"pl-c1\">OpenService<\/span>(hSCM, targetService, SERVICE_ALL_ACCESS);<\/td>\n<\/tr>\n<tr>\n<td id=\"L267\" class=\"blob-num js-line-number\" data-line-number=\"267\"><\/td>\n<td id=\"LC267\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">QueryServiceStatus<\/span>(TargetService, &amp;targetServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L268\" class=\"blob-num js-line-number\" data-line-number=\"268\"><\/td>\n<td id=\"LC268\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> res = <span class=\"pl-c1\">ControlService<\/span>(TargetService, SERVICE_CONTROL_STOP, &amp;targetServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L269\" class=\"blob-num js-line-number\" data-line-number=\"269\"><\/td>\n<td id=\"LC269\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L270\" class=\"blob-num js-line-number\" data-line-number=\"270\"><\/td>\n<td id=\"LC270\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u68c0\u6d4b\u76ee\u6807\u670d\u52a1\u72b6\u6001 *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L271\" class=\"blob-num js-line-number\" data-line-number=\"271\"><\/td>\n<td id=\"LC271\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">QueryServiceStatus<\/span>(TargetService, &amp;targetServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L272\" class=\"blob-num js-line-number\" data-line-number=\"272\"><\/td>\n<td id=\"LC272\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L273\" class=\"blob-num js-line-number\" data-line-number=\"273\"><\/td>\n<td id=\"LC273\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L274\" class=\"blob-num js-line-number\" data-line-number=\"274\"><\/td>\n<td id=\"LC274\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (!res)<\/td>\n<\/tr>\n<tr>\n<td id=\"L275\" class=\"blob-num js-line-number\" data-line-number=\"275\"><\/td>\n<td id=\"LC275\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L276\" class=\"blob-num js-line-number\" data-line-number=\"276\"><\/td>\n<td id=\"LC276\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">OutputDebugString<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Can not control target service.<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L277\" class=\"blob-num js-line-number\" data-line-number=\"277\"><\/td>\n<td id=\"LC277\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Stop Failed!<span class=\"pl-cce\">\\n<\/span><span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L278\" class=\"blob-num js-line-number\" data-line-number=\"278\"><\/td>\n<td id=\"LC278\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> <span class=\"pl-c1\">false<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L279\" class=\"blob-num js-line-number\" data-line-number=\"279\"><\/td>\n<td id=\"LC279\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L280\" class=\"blob-num js-line-number\" data-line-number=\"280\"><\/td>\n<td id=\"LC280\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L281\" class=\"blob-num js-line-number\" data-line-number=\"281\"><\/td>\n<td id=\"LC281\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u653e\u5728res\u68c0\u6d4b\u4e4b\u540e\uff0c\u907f\u514d\u6b7b\u5faa\u73af *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L282\" class=\"blob-num js-line-number\" data-line-number=\"282\"><\/td>\n<td id=\"LC282\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">while<\/span> (targetServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span> != SERVICE_STOPPED)<\/td>\n<\/tr>\n<tr>\n<td id=\"L283\" class=\"blob-num js-line-number\" data-line-number=\"283\"><\/td>\n<td id=\"LC283\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L284\" class=\"blob-num js-line-number\" data-line-number=\"284\"><\/td>\n<td id=\"LC284\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>This is itos &#8212; <span class=\"pl-pds\">&#8220;<\/span><\/span> + <span class=\"pl-c1\">itos<\/span>(targetServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span>));<\/td>\n<\/tr>\n<tr>\n<td id=\"L285\" class=\"blob-num js-line-number\" data-line-number=\"285\"><\/td>\n<td id=\"LC285\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">Sleep<\/span>(<span class=\"pl-c1\">1<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L286\" class=\"blob-num js-line-number\" data-line-number=\"286\"><\/td>\n<td id=\"LC286\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">QueryServiceStatus<\/span>(TargetService, &amp;targetServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L287\" class=\"blob-num js-line-number\" data-line-number=\"287\"><\/td>\n<td id=\"LC287\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L288\" class=\"blob-num js-line-number\" data-line-number=\"288\"><\/td>\n<td id=\"LC288\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L289\" class=\"blob-num js-line-number\" data-line-number=\"289\"><\/td>\n<td id=\"LC289\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L290\" class=\"blob-num js-line-number\" data-line-number=\"290\"><\/td>\n<td id=\"LC290\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Stop success!<span class=\"pl-cce\">\\n<\/span><span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L291\" class=\"blob-num js-line-number\" data-line-number=\"291\"><\/td>\n<td id=\"LC291\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L292\" class=\"blob-num js-line-number\" data-line-number=\"292\"><\/td>\n<td id=\"LC292\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> <span class=\"pl-c1\">true<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L293\" class=\"blob-num js-line-number\" data-line-number=\"293\"><\/td>\n<td id=\"LC293\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L294\" class=\"blob-num js-line-number\" data-line-number=\"294\"><\/td>\n<td id=\"LC294\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L295\" class=\"blob-num js-line-number\" data-line-number=\"295\"><\/td>\n<td id=\"LC295\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u57285.0\u4e4b\u524d\u7684\u7248\u672c\u7834\u89e3\u4e2d\u5e76\u6ca1\u6709\u4f7f\u7528\u6b64\u51fd\u6570\uff0c\u7559\u7ed9\u4e0b\u4e00\u4e2a\u82e6\u903c\u7a0b\u65ed\u733f\u4f5c\u4e3a\u53c2\u8003^_^ *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L296\" class=\"blob-num js-line-number\" data-line-number=\"296\"><\/td>\n<td id=\"LC296\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> <span class=\"pl-en\">startTargetService<\/span>()<\/td>\n<\/tr>\n<tr>\n<td id=\"L297\" class=\"blob-num js-line-number\" data-line-number=\"297\"><\/td>\n<td id=\"LC297\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L298\" class=\"blob-num js-line-number\" data-line-number=\"298\"><\/td>\n<td id=\"LC298\" class=\"blob-code blob-code-inner js-file-line\">SC_HANDLE hSCM, TargetService;<\/td>\n<\/tr>\n<tr>\n<td id=\"L299\" class=\"blob-num js-line-number\" data-line-number=\"299\"><\/td>\n<td id=\"LC299\" class=\"blob-code blob-code-inner js-file-line\">SERVICE_STATUS targetServiceStatus;<\/td>\n<\/tr>\n<tr>\n<td id=\"L300\" class=\"blob-num js-line-number\" data-line-number=\"300\"><\/td>\n<td id=\"LC300\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> success = <span class=\"pl-c1\">false<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L301\" class=\"blob-num js-line-number\" data-line-number=\"301\"><\/td>\n<td id=\"LC301\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L302\" class=\"blob-num js-line-number\" data-line-number=\"302\"><\/td>\n<td id=\"LC302\" class=\"blob-code blob-code-inner js-file-line\">hSCM = <span class=\"pl-c1\">OpenSCManager<\/span>(<span class=\"pl-c1\">NULL<\/span>, <span class=\"pl-c1\">NULL<\/span>, SC_MANAGER_ENUMERATE_SERVICE | SC_MANAGER_CREATE_SERVICE);<\/td>\n<\/tr>\n<tr>\n<td id=\"L303\" class=\"blob-num js-line-number\" data-line-number=\"303\"><\/td>\n<td id=\"LC303\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (!hSCM)<\/td>\n<\/tr>\n<tr>\n<td id=\"L304\" class=\"blob-num js-line-number\" data-line-number=\"304\"><\/td>\n<td id=\"LC304\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L305\" class=\"blob-num js-line-number\" data-line-number=\"305\"><\/td>\n<td id=\"LC305\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Open SCManager failed.<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L306\" class=\"blob-num js-line-number\" data-line-number=\"306\"><\/td>\n<td id=\"LC306\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> <span class=\"pl-c1\">false<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L307\" class=\"blob-num js-line-number\" data-line-number=\"307\"><\/td>\n<td id=\"LC307\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L308\" class=\"blob-num js-line-number\" data-line-number=\"308\"><\/td>\n<td id=\"LC308\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L309\" class=\"blob-num js-line-number\" data-line-number=\"309\"><\/td>\n<td id=\"LC309\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/\/AppService = CreateService(hSCM, serviceName, serviceName, SERVICE_ALL_ACCESS | SERVICE_STOP, SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, SERVICE_ERROR_NORMAL, )<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L310\" class=\"blob-num js-line-number\" data-line-number=\"310\"><\/td>\n<td id=\"LC310\" class=\"blob-code blob-code-inner js-file-line\">TargetService = <span class=\"pl-c1\">OpenService<\/span>(hSCM, targetService, SERVICE_ALL_ACCESS);<\/td>\n<\/tr>\n<tr>\n<td id=\"L311\" class=\"blob-num js-line-number\" data-line-number=\"311\"><\/td>\n<td id=\"LC311\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">QueryServiceStatus<\/span>(TargetService, &amp;targetServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L312\" class=\"blob-num js-line-number\" data-line-number=\"312\"><\/td>\n<td id=\"LC312\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">bool<\/span> res = <span class=\"pl-c1\">StartService<\/span>(TargetService, <span class=\"pl-c1\">0<\/span>, <span class=\"pl-c1\">NULL<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L313\" class=\"blob-num js-line-number\" data-line-number=\"313\"><\/td>\n<td id=\"LC313\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L314\" class=\"blob-num js-line-number\" data-line-number=\"314\"><\/td>\n<td id=\"LC314\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L315\" class=\"blob-num js-line-number\" data-line-number=\"315\"><\/td>\n<td id=\"LC315\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L316\" class=\"blob-num js-line-number\" data-line-number=\"316\"><\/td>\n<td id=\"LC316\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if<\/span> (!res)<\/td>\n<\/tr>\n<tr>\n<td id=\"L317\" class=\"blob-num js-line-number\" data-line-number=\"317\"><\/td>\n<td id=\"LC317\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L318\" class=\"blob-num js-line-number\" data-line-number=\"318\"><\/td>\n<td id=\"LC318\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Start failed<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L319\" class=\"blob-num js-line-number\" data-line-number=\"319\"><\/td>\n<td id=\"LC319\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> <span class=\"pl-c1\">false<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L320\" class=\"blob-num js-line-number\" data-line-number=\"320\"><\/td>\n<td id=\"LC320\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L321\" class=\"blob-num js-line-number\" data-line-number=\"321\"><\/td>\n<td id=\"LC321\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L322\" class=\"blob-num js-line-number\" data-line-number=\"322\"><\/td>\n<td id=\"LC322\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/* \u68c0\u6d4b\u76ee\u6807\u670d\u52a1\u72b6\u6001\uff0c\u540c\u6837\u5199\u5728\u68c0\u6d4b\u63a7\u5236\u7ed3\u679c\u4e4b\u540e *\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L323\" class=\"blob-num js-line-number\" data-line-number=\"323\"><\/td>\n<td id=\"LC323\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">QueryServiceStatus<\/span>(TargetService, &amp;targetServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L324\" class=\"blob-num js-line-number\" data-line-number=\"324\"><\/td>\n<td id=\"LC324\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">while<\/span> (targetServiceStatus.<span class=\"pl-smi\">dwCurrentState<\/span> != SERVICE_RUNNING)<\/td>\n<\/tr>\n<tr>\n<td id=\"L325\" class=\"blob-num js-line-number\" data-line-number=\"325\"><\/td>\n<td id=\"LC325\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L326\" class=\"blob-num js-line-number\" data-line-number=\"326\"><\/td>\n<td id=\"LC326\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Starting<span class=\"pl-cce\">\\n<\/span><span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L327\" class=\"blob-num js-line-number\" data-line-number=\"327\"><\/td>\n<td id=\"LC327\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">Sleep<\/span>(<span class=\"pl-c1\">1<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L328\" class=\"blob-num js-line-number\" data-line-number=\"328\"><\/td>\n<td id=\"LC328\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">QueryServiceStatus<\/span>(TargetService, &amp;targetServiceStatus);<\/td>\n<\/tr>\n<tr>\n<td id=\"L329\" class=\"blob-num js-line-number\" data-line-number=\"329\"><\/td>\n<td id=\"LC329\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L330\" class=\"blob-num js-line-number\" data-line-number=\"330\"><\/td>\n<td id=\"LC330\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">writeToLog<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>Start success!<span class=\"pl-pds\">&#8220;<\/span><\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L331\" class=\"blob-num js-line-number\" data-line-number=\"331\"><\/td>\n<td id=\"LC331\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> <span class=\"pl-c1\">true<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L332\" class=\"blob-num js-line-number\" data-line-number=\"332\"><\/td>\n<td id=\"LC332\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L333\" class=\"blob-num js-line-number\" data-line-number=\"333\"><\/td>\n<td id=\"LC333\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L334\" class=\"blob-num js-line-number\" data-line-number=\"334\"><\/td>\n<td id=\"LC334\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L335\" class=\"blob-num js-line-number\" data-line-number=\"335\"><\/td>\n<td id=\"LC335\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">void<\/span> <span class=\"pl-en\">writeToLog<\/span>(string msg)<\/td>\n<\/tr>\n<tr>\n<td id=\"L336\" class=\"blob-num js-line-number\" data-line-number=\"336\"><\/td>\n<td id=\"LC336\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L337\" class=\"blob-num js-line-number\" data-line-number=\"337\"><\/td>\n<td id=\"LC337\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">\/*\u6b63\u5f0f\u7248\u4e0d\u5199log*\/<\/span><\/td>\n<\/tr>\n<tr>\n<td id=\"L338\" class=\"blob-num js-line-number\" data-line-number=\"338\"><\/td>\n<td id=\"LC338\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L339\" class=\"blob-num js-line-number\" data-line-number=\"339\"><\/td>\n<td id=\"LC339\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">time_t<\/span> tick;<\/td>\n<\/tr>\n<tr>\n<td id=\"L340\" class=\"blob-num js-line-number\" data-line-number=\"340\"><\/td>\n<td id=\"LC340\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">struct<\/span> <span class=\"pl-en\">tm<\/span> <span class=\"pl-c1\">tm<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L341\" class=\"blob-num js-line-number\" data-line-number=\"341\"><\/td>\n<td id=\"LC341\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">char<\/span> s[<span class=\"pl-c1\">100<\/span>];<\/td>\n<\/tr>\n<tr>\n<td id=\"L342\" class=\"blob-num js-line-number\" data-line-number=\"342\"><\/td>\n<td id=\"LC342\" class=\"blob-code blob-code-inner js-file-line\">tick = <span class=\"pl-c1\">time<\/span>(<span class=\"pl-c1\">NULL<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L343\" class=\"blob-num js-line-number\" data-line-number=\"343\"><\/td>\n<td id=\"LC343\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">tm<\/span> = *<span class=\"pl-c1\">localtime<\/span>(&amp;tick);<\/td>\n<\/tr>\n<tr>\n<td id=\"L344\" class=\"blob-num js-line-number\" data-line-number=\"344\"><\/td>\n<td id=\"LC344\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">strftime<\/span>(s, <span class=\"pl-k\">sizeof<\/span>(s), <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>%Y-%m-%d %H:%M:%S<span class=\"pl-pds\">&#8220;<\/span><\/span>, &amp;<span class=\"pl-c1\">tm<\/span>);<\/td>\n<\/tr>\n<tr>\n<td id=\"L345\" class=\"blob-num js-line-number\" data-line-number=\"345\"><\/td>\n<td id=\"LC345\" class=\"blob-code blob-code-inner js-file-line\">ofstream <span class=\"pl-smi\">outfile<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>D:<span class=\"pl-cce\">\\\\<\/span>log.txt<span class=\"pl-pds\">&#8220;<\/span><\/span>, ios::app);<\/td>\n<\/tr>\n<tr>\n<td id=\"L346\" class=\"blob-num js-line-number\" data-line-number=\"346\"><\/td>\n<td id=\"LC346\" class=\"blob-code blob-code-inner js-file-line\">outfile &lt;&lt; <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>[<span class=\"pl-pds\">&#8220;<\/span><\/span> &lt;&lt; s &lt;&lt; <span class=\"pl-s\"><span class=\"pl-pds\">&#8220;<\/span>]: <span class=\"pl-pds\">&#8220;<\/span><\/span> &lt;&lt; msg.<span class=\"pl-c1\">c_str<\/span>() &lt;&lt; endl;<\/td>\n<\/tr>\n<tr>\n<td id=\"L347\" class=\"blob-num js-line-number\" data-line-number=\"347\"><\/td>\n<td id=\"LC347\" class=\"blob-code blob-code-inner js-file-line\">outfile.<span class=\"pl-c1\">close<\/span>();<\/td>\n<\/tr>\n<tr>\n<td id=\"L348\" class=\"blob-num js-line-number\" data-line-number=\"348\"><\/td>\n<td id=\"LC348\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span>;<\/td>\n<\/tr>\n<tr>\n<td id=\"L349\" class=\"blob-num js-line-number\" data-line-number=\"349\"><\/td>\n<td id=\"LC349\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"L350\" class=\"blob-num js-line-number\" data-line-number=\"350\"><\/td>\n<td id=\"LC350\" class=\"blob-code blob-code-inner js-file-line\"><\/td>\n<\/tr>\n<tr>\n<td id=\"L351\" class=\"blob-num js-line-number\" data-line-number=\"351\"><\/td>\n<td id=\"LC351\" class=\"blob-code blob-code-inner js-file-line\">string <span class=\"pl-en\">itos<\/span>(<span class=\"pl-k\">int<\/span> i)<\/td>\n<\/tr>\n<tr>\n<td id=\"L352\" class=\"blob-num js-line-number\" data-line-number=\"352\"><\/td>\n<td id=\"LC352\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"L353\" class=\"blob-num js-line-number\" data-line-number=\"353\"><\/td>\n<td id=\"LC353\" class=\"blob-code blob-code-inner js-file-line\">stringstream s;<\/td>\n<\/tr>\n<tr>\n<td id=\"L354\" class=\"blob-num js-line-number\" data-line-number=\"354\"><\/td>\n<td id=\"LC354\" class=\"blob-code blob-code-inner js-file-line\">s &lt;&lt; i;<\/td>\n<\/tr>\n<tr>\n<td id=\"L355\" class=\"blob-num js-line-number\" data-line-number=\"355\"><\/td>\n<td id=\"LC355\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">return<\/span> s.<span class=\"pl-c1\">str<\/span>();<\/td>\n<\/tr>\n<tr>\n<td id=\"L356\" class=\"blob-num js-line-number\" data-line-number=\"356\"><\/td>\n<td id=\"LC356\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>\/*! @author winterma<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[24],"tags":[121],"class_list":["post-1468","post","type-post","status-publish","format-standard","hentry","category-value_docs","tag-05-"],"_links":{"self":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/posts\/1468","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/comments?post=1468"}],"version-history":[{"count":0,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/posts\/1468\/revisions"}],"wp:attachment":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/media?parent=1468"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/categories?post=1468"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/tags?post=1468"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}