• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            GET LOCAL MACHINE DNS SERVER

            Posted on 2010-05-17 16:43 S.l.e!ep.¢% 閱讀(417) 評論(0)  編輯 收藏 引用 所屬分類: VC
            1. //?DNS_BrowserDlg.cpp?:?êμ?????t? ??
            2. //? ??
            3. ???
            4. #include?"stdafx.h"? ??
            5. #include?"DNS_Browser.h"? ??
            6. #include?"DNS_BrowserDlg.h"? ??
            7. #include?".\dns_browserdlg.h"? ??
            8. ???
            9. #ifdef?_DEBUG? ??
            10. #define?new?DEBUG_NEW? ??
            11. #endif? ??
            12. ???
            13. ???
            14. //?ó?óúó|ó?3ìDò?°1?óú?±2?μ¥??μ??CAboutDlg????°?ò? ??
            15. ???
            16. class ?CAboutDlg?:? public ?CDialog???
            17. {???
            18. public :???
            19. ????CAboutDlg();???
            20. //????°?òêy?Y? ??
            21. ???? enum ?{?IDD?=?IDD_ABOUTBOX?};???
            22. ???
            23. ???? protected :???
            24. ???? virtual ? void ?DoDataExchange(CDataExchange*?pDX);???? //?DDX/DDV??§3?? ??
            25. ???
            26. //?êμ??? ??
            27. protected :???
            28. ????DECLARE_MESSAGE_MAP()???
            29. };???
            30. ???
            31. CAboutDlg::CAboutDlg()?:?CDialog(CAboutDlg::IDD)???
            32. {???
            33. }???
            34. ???
            35. void ?CAboutDlg::DoDataExchange(CDataExchange*?pDX)???
            36. {???
            37. ????CDialog::DoDataExchange(pDX);???
            38. }???
            39. ???
            40. BEGIN_MESSAGE_MAP(CAboutDlg,?CDialog)???
            41. END_MESSAGE_MAP()???
            42. ???
            43. ???
            44. //?CDNS_BrowserDlg????°?ò? ??
            45. ???
            46. ???
            47. ???
            48. CDNS_BrowserDlg::CDNS_BrowserDlg(CWnd*?pParent? /*=NULL*/ )???
            49. ????:?CDialog(CDNS_BrowserDlg::IDD,?pParent)???
            50. {???
            51. ????m_hIcon?=?AfxGetApp()->LoadIcon(IDR_MAINFRAME);???
            52. }???
            53. ???
            54. void ?CDNS_BrowserDlg::DoDataExchange(CDataExchange*?pDX)???
            55. {???
            56. ????CDialog::DoDataExchange(pDX);???
            57. ????DDX_Control(pDX,?IDC_LIST1,?m_listDNS);???
            58. }???
            59. ???
            60. BEGIN_MESSAGE_MAP(CDNS_BrowserDlg,?CDialog)???
            61. ????ON_WM_SYSCOMMAND()???
            62. ????ON_WM_PAINT()???
            63. ????ON_WM_QUERYDRAGICON()???
            64. ???? //}}AFX_MSG_MAP? ??
            65. ????ON_BN_CLICKED(IDC_BUTTON1,?OnBnClickedButton1)???
            66. END_MESSAGE_MAP()???
            67. ???
            68. ???
            69. //?CDNS_BrowserDlg????¢′|àí3ìDò? ??
            70. ???
            71. BOOL ?CDNS_BrowserDlg::OnInitDialog()???
            72. {???
            73. ????CDialog::OnInitDialog();???
            74. ???
            75. ???? //???\?°1?óú...\?±2?μ¥??ìí?óμ??μí32?μ¥?D?£? ??
            76. ???
            77. ???? //?IDM_ABOUTBOX?±?D??ú?μí3?üá?·??§?ú?£? ??
            78. ????ASSERT((IDM_ABOUTBOX?&?0xFFF0)?==?IDM_ABOUTBOX);???
            79. ????ASSERT(IDM_ABOUTBOX?<?0xF000);???
            80. ???
            81. ????CMenu*?pSysMenu?=?GetSystemMenu(FALSE);???
            82. ???? if ?(pSysMenu?!=?NULL)???
            83. ????{???
            84. ????????CString?strAboutMenu;???
            85. ????????strAboutMenu.LoadString(IDS_ABOUTBOX);???
            86. ???????? if ?(!strAboutMenu.IsEmpty())???
            87. ????????{???
            88. ????????????pSysMenu->AppendMenu(MF_SEPARATOR);???
            89. ????????????pSysMenu->AppendMenu(MF_STRING,?IDM_ABOUTBOX,?strAboutMenu);???
            90. ????????}???
            91. ????}???
            92. ???
            93. ???? //?éè??′????°?òμ?í?±ê?£μ±ó|ó?3ìDò?÷′°?ú2?ê????°?òê±£??ò?ü??×??ˉ? ??
            94. ???? //???′DD′?2ù×÷? ??
            95. ????SetIcon(m_hIcon,?TRUE);????????? //?éè??′óí?±ê? ??
            96. ????SetIcon(m_hIcon,?FALSE);???????? //?éè??D?í?±ê? ??
            97. ???
            98. ???? //?TODO:??ú′?ìí?ó??íaμ?3?ê??ˉ′ú??? ??
            99. ???????
            100. ???? return ?TRUE;?? //?3y·?éè??á????tμ??1μ?£?·??ò·μ???TRUE? ??
            101. }???
            102. ???
            103. void ?CDNS_BrowserDlg::OnSysCommand( UINT ?nID,? LPARAM ?lParam)???
            104. {???
            105. ???? if ?((nID?&?0xFFF0)?==?IDM_ABOUTBOX)???
            106. ????{???
            107. ????????CAboutDlg?dlgAbout;???
            108. ????????dlgAbout.DoModal();???
            109. ????}???
            110. ???? else ???
            111. ????{???
            112. ????????CDialog::OnSysCommand(nID,?lParam);???
            113. ????}???
            114. }???
            115. ???
            116. //?è?1??ò???°?òìí?ó×?D??ˉ°′?¥£??òDèòa????μ?′ú??? ??
            117. //??à′??????í?±ê?£??óúê1ó???μμ/êóí??£Díμ??MFC?ó|ó?3ìDò£?? ??
            118. //???a??óé?ò?ü×??ˉíê3é?£? ??
            119. ???
            120. void ?CDNS_BrowserDlg::OnPaint()????
            121. {???
            122. ???? if ?(IsIconic())???
            123. ????{???
            124. ????????CPaintDC?dc( this );? //?ó?óú????μ?éè±?é?????? ??
            125. ???
            126. ????????SendMessage(WM_ICONERASEBKGND,? reinterpret_cast < WPARAM >(dc.GetSafeHdc()),?0);???
            127. ???
            128. ???????? //?ê1í?±ê?ú1¤×÷??D??D?ó?D? ??
            129. ???????? int ?cxIcon?=?GetSystemMetrics(SM_CXICON);???
            130. ???????? int ?cyIcon?=?GetSystemMetrics(SM_CYICON);???
            131. ????????CRect?rect;???
            132. ????????GetClientRect(&rect);???
            133. ???????? int ?x?=?(rect.Width()?-?cxIcon?+?1)?/?2;???
            134. ???????? int ?y?=?(rect.Height()?-?cyIcon?+?1)?/?2;???
            135. ???
            136. ???????? //?????í?±ê? ??
            137. ????????dc.DrawIcon(x,?y,?m_hIcon);???
            138. ????}???
            139. ???? else ???
            140. ????{???
            141. ????????CDialog::OnPaint();???
            142. ????}???
            143. }???
            144. ???
            145. //μ±ó??§í??ˉ×?D??ˉ′°?úê±?μí3μ÷ó?′?oˉêyè?μ?1a±ê??ê??£? ??
            146. HCURSOR ?CDNS_BrowserDlg::OnQueryDragIcon()???
            147. {???
            148. ???? return ? static_cast < HCURSOR >(m_hIcon);???
            149. }???
            150. ???
            151. void ?CDNS_BrowserDlg::OnBnClickedButton1()???
            152. {???
            153. ???? //?TODO:??ú′?ìí?ó???tí¨?a′|àí3ìDò′ú??? ??
            154. ???? LONG ?lRtn;???
            155. ???? HKEY ?hMainKey;???
            156. ???? TCHAR ?szParameters[256];???
            157. ???
            158. ????_tcscpy(szParameters,_T( "SYSTEM\\ControlSet001\\Services\\Tcpip\\Parameters" ));???
            159. ???
            160. //??μ?IPμ??·oíDNS?a??μè????éè??? ??
            161. ???
            162. ????m_listDNS.ResetContent();???
            163. ???
            164. ???? HKEY ?hNetCard?=?NULL;???
            165. ???? //m_TotalNetCards?=?GetMacAddress(m_MacAddr);? ??
            166. ???
            167. ????lRtn?=?::RegOpenKeyEx(HKEY_LOCAL_MACHINE,_T( "SOFTWARE\\Microsoft\\Windows?NT\\CurrentVersion\\NetworkCards" ),0,KEY_READ,&hNetCard);???
            168. ???? if (lRtn?!=?ERROR_SUCCESS) //′?′|ê§°ü?í·μ??? ??
            169. ????{???
            170. ???????? if (hNetCard?!=?NULL)???
            171. ????????????::RegCloseKey(hNetCard);???
            172. ???????? return ?;???
            173. ????}???
            174. ???????
            175. ???? DWORD ?dwSubKeyNum?=?0,dwSubKeyLen?=?256;???
            176. //μ?μ?×ó?üμ???êy£?í¨3£ó?í??¨??êy?àμè? ??
            177. ????lRtn?=?::RegQueryInfoKey(hNetCard,NULL,NULL,NULL,&dwSubKeyNum,&dwSubKeyLen,???
            178. ????????NULL,NULL,NULL,NULL,NULL,NULL);???
            179. ???? if (lRtn?==?ERROR_SUCCESS)???
            180. ????{???
            181. ???????? //m_TotalNetCards?=?dwSubKeyNum;//í??¨??êyò?′??a?÷? ??
            182. ???????? LPTSTR ?lpszKeyName?=? new ? TCHAR [dwSubKeyLen?+?1];???
            183. ???????? DWORD ?dwSize;???
            184. ???????? for ( int ?i?=?0;?i?<?( int )dwSubKeyNum;?i++)???
            185. ????????{???
            186. ???????????? TCHAR ?szServiceName[256];???
            187. ???????????? HKEY ?hNewKey;???
            188. ???????????? DWORD ?dwType?=?REG_SZ,dwDataSize?=?256;???
            189. ????????????dwSize?=?dwSubKeyLen?+?1;???
            190. ????????????::RegEnumKeyEx(hNetCard,i,lpszKeyName,&dwSize,NULL,NULL,NULL,NULL);???
            191. ????????????lRtn?=?::RegOpenKeyEx(hNetCard,lpszKeyName,0,KEY_READ,&hNewKey);???
            192. ???????????? if (lRtn?==?ERROR_SUCCESS)???
            193. ????????????{???
            194. ????????????????dwDataSize?=?256;???
            195. ????????????????lRtn?=?::RegQueryValueEx(hNewKey,_T( "ServiceName" ),NULL,&dwType,( LPBYTE )szServiceName,&dwDataSize);???
            196. ???????????????? if (lRtn?==?ERROR_SUCCESS)???
            197. ????????????????{???
            198. ???????????????????? TCHAR ?szNewKey[256];???
            199. ????????????????????wsprintf(szNewKey,_T( "%s\\Interfaces\\%s" ),szParameters,szServiceName);???
            200. ???????????????????? HKEY ?hTcpKey;???
            201. ????????????????????lRtn?=?::RegOpenKeyEx(HKEY_LOCAL_MACHINE,szNewKey,0,KEY_READ,&hTcpKey);???
            202. ???????????????????? if (lRtn?==?ERROR_SUCCESS)???
            203. ????????????????????{???
            204. ????????????????????????dwDataSize?=?256;???
            205. ????????????????????????::RegQueryValueEx(hTcpKey,_T( "NameServer" ),NULL,&dwType,( LPBYTE )m_CardsNameServer[i],&dwDataSize);???
            206. ????????????????????????m_listDNS.AddString(m_CardsNameServer[i]);???
            207. ????????????????????}???
            208. ????????????????????::RegCloseKey(hTcpKey);???
            209. ????????????????}???
            210. ????????????}???
            211. ????????????::RegCloseKey(hNewKey);???
            212. ????????}???
            213. ???????? delete []?lpszKeyName;???
            214. ????}???
            215. ????::RegCloseKey(hNetCard);???
            216. }???
            久久精品国产精品青草app| 亚洲国产精品成人久久蜜臀 | 欧美日韩精品久久久久 | 亚洲欧美日韩中文久久| 国内精品伊人久久久久av一坑| 久久国产乱子精品免费女| 久久久久久久亚洲精品| 亚洲精品无码专区久久久 | 国产精品乱码久久久久久软件| 久久水蜜桃亚洲av无码精品麻豆| 国产成人久久精品二区三区| 久久亚洲中文字幕精品一区| 国产精品亚洲综合专区片高清久久久| 久久久久久国产精品美女| 国产精品久久久久一区二区三区| 国产aⅴ激情无码久久| 国产精品激情综合久久| 久久精品亚洲日本波多野结衣 | 精产国品久久一二三产区区别| 大伊人青草狠狠久久| 亚洲伊人久久综合影院| 久久综合丁香激情久久| 亚洲精品无码久久久久| 久久天天婷婷五月俺也去| 国产亚州精品女人久久久久久| 精品免费久久久久久久| 亚洲级αV无码毛片久久精品| 久久久久噜噜噜亚洲熟女综合| 久久噜噜电影你懂的| 77777亚洲午夜久久多喷| 色婷婷综合久久久中文字幕| 欧美久久久久久| 香蕉久久夜色精品国产2020| 欧美午夜精品久久久久久浪潮| 久久亚洲欧美日本精品| 99久久人人爽亚洲精品美女| 久久国产高清字幕中文| 91超碰碰碰碰久久久久久综合| av午夜福利一片免费看久久| 狠狠色丁香久久婷婷综合五月| 久久精品人人做人人爽97|