{"id":51,"date":"2008-09-30T17:58:25","date_gmt":"2008-09-30T17:58:25","guid":{"rendered":"http:\/\/kumouse.aafox.com\/?p=51"},"modified":"2008-09-30T17:58:25","modified_gmt":"2008-09-30T17:58:25","slug":"gettickcount-%e8%ae%a1%e7%ae%9711-1%e4%ba%bf%e6%ac%a1%e7%9a%84%e6%97%b6%e9%97%b4","status":"publish","type":"post","link":"https:\/\/www.kumouse.com\/?p=51","title":{"rendered":"GetTickCount \u8ba1\u7b971+1 1\u4ebf\u6b21\u7684\u65f6\u95f4"},"content":{"rendered":"<p>GetTickCount\u6700\u5c0f\u8ba1\u6570\u65f6\u95f4\u572815MS\u5de6\u53f3<\/p>\n<p>timer.asm:<\/p>\n<blockquote><p>&nbsp;&nbsp;&nbsp;&nbsp;.386<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.model flat,stdcall<br \/>&nbsp;&nbsp;&nbsp;&nbsp;option casemap:none<br \/>; Include \u6587\u4ef6\u5b9a\u4e49<br \/>include&nbsp;&nbsp;&nbsp;&nbsp;windows.inc<br \/>include&nbsp;&nbsp;&nbsp;&nbsp;user32.inc<br \/>includelib&nbsp;&nbsp;user32.lib<br \/>include&nbsp;&nbsp;&nbsp;&nbsp;kernel32.inc<br \/>includelib&nbsp;&nbsp;kernel32.lib<br \/>;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>ID_TIMER1&nbsp;&nbsp;equ&nbsp;&nbsp;1<br \/>DLG_MAIN&nbsp;&nbsp;equ&nbsp;&nbsp;1<br \/>IDC_COUNT&nbsp;&nbsp;equ&nbsp;&nbsp;101<br \/>;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>; \u6570\u636e\u6bb5<br \/>;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.data?<br \/>hInstance&nbsp;&nbsp;dd&nbsp;&nbsp;&nbsp;&nbsp;?<br \/>tick1&nbsp;&nbsp;&nbsp;&nbsp;dd&nbsp;&nbsp;&nbsp;&nbsp;?<br \/>;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>; \u4ee3\u7801\u6bb5<br \/>;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.code<br \/>;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>; \u8ba1\u7b97\u8fc7\u7a0b<br \/>;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<\/p>\n<p>_ProcDlgMain&nbsp;&nbsp;proc&nbsp;&nbsp;uses ebx edi esi,hWnd,uMsg,wParam,lParam<br \/>&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;eax,uMsg<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.if&nbsp;&nbsp;eax ==&nbsp;&nbsp;WM_TIMER<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;eax,wParam<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.if&nbsp;&nbsp;eax == ID_TIMER1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke&nbsp;&nbsp;MessageBeep,-1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.endif<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.elseif&nbsp;&nbsp;eax ==&nbsp;&nbsp;WM_INITDIALOG<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke GetTickCount<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mov tick1,eax<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.while 1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add edi,1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.break .if edi &gt; 100000000<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;.continue<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.endw<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke GetTickCount<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sub eax,tick1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke&nbsp;&nbsp;SetDlgItemInt,hWnd,IDC_COUNT,eax,FALSE<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.elseif eax ==&nbsp;&nbsp;WM_COMMAND<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;eax,wParam<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.if ax == IDOK<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke GetTickCount<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mov tick1,eax<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.while 1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add edi,1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.break .if edi &gt; 100000000<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;.continue<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.endw<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke GetTickCount<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sub eax,tick1<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke&nbsp;&nbsp;SetDlgItemInt,hWnd,IDC_COUNT,eax,FALSE<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.endif<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.elseif&nbsp;&nbsp;eax ==&nbsp;&nbsp;WM_CLOSE<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invoke&nbsp;&nbsp;EndDialog,hWnd,NULL<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.else<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;eax,FALSE<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ret<br \/>&nbsp;&nbsp;&nbsp;&nbsp;.endif<br \/>&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;eax,TRUE<br \/>&nbsp;&nbsp;&nbsp;&nbsp;ret<\/p>\n<p>_ProcDlgMain&nbsp;&nbsp;endp<\/p>\n<p>start:<br \/>&nbsp;&nbsp;&nbsp;&nbsp;invoke&nbsp;&nbsp;GetModuleHandle,NULL<br \/>&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;hInstance,eax<br \/>&nbsp;&nbsp;&nbsp;&nbsp;invoke&nbsp;&nbsp;DialogBoxParam,hInstance,DLG_MAIN,NULL,offset _ProcDlgMain,NULL<br \/>&nbsp;&nbsp;&nbsp;&nbsp;invoke&nbsp;&nbsp;ExitProcess,NULL<br \/>&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;&nbsp;start<\/p><\/blockquote>\n<p>timer.rc:<\/p>\n<blockquote><p>\/\/&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>#include&nbsp;&nbsp;&nbsp;&nbsp;&lt;resource.h&gt;<br \/>\/\/&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>#define&nbsp;&nbsp;DLG_MAIN&nbsp;&nbsp;&nbsp;&nbsp;1<br \/>#define&nbsp;&nbsp;ICO_1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1<br \/>#define&nbsp;&nbsp;IDC_COUNT&nbsp;&nbsp;&nbsp;&nbsp;101<br \/>\/\/&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>ICO_1&nbsp;&nbsp;ICON&nbsp;&nbsp;&nbsp;&nbsp;&quot;1.ico&quot;<br \/>\/\/&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br \/>DLG_MAIN DIALOG 70, 110, 120, 70<br \/>STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU<br \/>CAPTION &quot;1+1 1\u4ebf\u6b21 \u5c0f\u6770\u7684\u535a\u5ba2&quot;<br \/>FONT 9, &quot;\u5b8b\u4f53&quot;<br \/>{<br \/> LTEXT &quot;\u8ba1\u6570\uff1a&quot;, -1, 35, 16, 25, 10<br \/> LTEXT &quot;&quot;, IDC_COUNT, 62, 16, 40, 10<br \/> DEFPUSHBUTTON &quot;\u5f00\u59cb&quot;, IDOK, 35, 36, 50, 20<br \/>}<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>GetTickCount\u6700\u5c0f\u8ba1\u6570\u65f6\u95f4\u572815MS\u5de6\u53f3 timer.asm: &nbsp;&nbsp;&nbsp; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-51","post","type-post","status-publish","format-standard","hentry","category-12"],"_links":{"self":[{"href":"https:\/\/www.kumouse.com\/index.php?rest_route=\/wp\/v2\/posts\/51","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kumouse.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kumouse.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kumouse.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kumouse.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=51"}],"version-history":[{"count":0,"href":"https:\/\/www.kumouse.com\/index.php?rest_route=\/wp\/v2\/posts\/51\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.kumouse.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=51"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kumouse.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=51"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kumouse.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=51"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}