Win7与Xp,直观上最大的区别便是界面上的改变了,win7拥有着华丽的玻璃界面.今天就写一下关于这方面的文章.
毫无疑问,一切都是微软提供,以下一切内容参考于MSDN中http://msdn.microsoft.com/en-us/library/windows/desktop/aa969540(v=vs.85).aspx这篇文章.
先给出代码.再做解释:
1 .386 2 .model flat,stdcall 3 option casemap:none 4 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 5 ; Include 文件定义 6 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 7 include windows.inc 8 include gdi32.inc 9 includelib gdi32.lib 10 include user32.inc 11 includelib user32.lib 12 include kernel32.inc 13 includelib kernel32.lib 14 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 15 ; 数据段 16 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 17 .data? 18 hInstance dd ? 19 hWinMain dd ? 20 lpAeroEnb dd ? 21 lpAero dd ? 22 lpClientEnb dd ? 23 hDll dd ? 24 25 DWM_BLURBEHIND struct 26 27 dwFlags dword ? 28 fEnable dword ? 29 hRgnBlur dword ? 30 fTransitionOnMaximized dword ? 31 32 DWM_BLURBEHIND ends 33 34 .const 35 szClassName db 'MyClass',0 36 szCaptionMain db 'Translucent windows demo',0 37 szText db 'Win32 Assembly, Simple and powerful !',0 38 szDll db 'Dwmapi.dll',0 39 szEnable db 'DwmEnableComposition',0 40 szToClient db 'DwmExtendFrameIntoClientArea',0 41 szEnableClient db 'DwmEnableBlurBehindWindow',0 42 43 44 45 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 46 ; 代码段 47 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 48 .code 49 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 50 ; 窗口过程 51 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 52 _ProcWinMain proc uses ebx edi esi hWnd,uMsg,wParam,lParam 53 local @stPs:PAINTSTRUCT 54 local @stRect:RECT 55 local @hDc 56 local @stRect1:RECT 57 local @stBlurBehind:DWM_BLURBEHIND 58 59 mov @stRect1.left,0 60 mov @stRect1.top,0 61 mov @stRect1.right,0 62 mov @stRect1.bottom,25 63 64 mov @stBlurBehind.dwFlags,1 65 mov @stBlurBehind.fEnable, TRUE 66 mov @stBlurBehind.hRgnBlur,NULL 67 mov @stBlurBehind.fTransitionOnMaximized,FALSE 68 69 mov eax,uMsg 70 ;******************************************************************** 71 .if eax == WM_CREATE 72 73 mov @stRect1.left,-1 74 mov @stRect1.top,-1 75 mov @stRect1.right,-1 76 mov @stRect1.bottom,-1 77 78 lea eax, @stRect1 79 push eax 80 push hWnd 81 call lpAero 82 83 ; lea eax, @stBlurBehind 84 ; push eax 85 ; push hWnd 86 ; call lpClientEnb 87 88 .elseif eax == WM_PAINT 89 invoke BeginPaint,hWnd,addr @stPs 90 mov @hDc,eax 91 92 invoke GetClientRect,hWnd,addr @stRect 93 94 invoke GetStockObject,BLACK_BRUSH 95 mov ebx,eax 96 97 lea ecx,@stRect 98 99 invoke FillRect,@hDc,ecx,ebx 100 101 invoke EndPaint,hWnd,addr @stPs 102 ;******************************************************************** 103 .elseif eax == WM_CLOSE 104 invoke DestroyWindow,hWinMain 105 invoke PostQuitMessage,NULL 106 ;******************************************************************** 107 .else 108 invoke DefWindowProc,hWnd,uMsg,wParam,lParam 109 ret 110 .endif 111 ;******************************************************************** 112 xor eax,eax 113 ret 114 115 _ProcWinMain endp 116 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 117 _WinMain proc 118 local @stWndClass:WNDCLASSEX 119 local @stMsg:MSG 120 121 122 invoke GetModuleHandle,NULL 123 mov hInstance,eax 124 invoke RtlZeroMemory,addr @stWndClass,sizeof @stWndClass 125 ;******************************************************************** 126 ; 注册窗口类 127 ;******************************************************************** 128 invoke LoadCursor,0,IDC_ARROW 129 mov @stWndClass.hCursor,eax 130 push hInstance 131 pop @stWndClass.hInstance 132 mov @stWndClass.cbSize,sizeof WNDCLASSEX 133 mov @stWndClass.style,CS_HREDRAW or CS_VREDRAW 134 mov @stWndClass.lpfnWndProc,offset _ProcWinMain 135 mov @stWndClass.hbrBackground,COLOR_WINDOW + 1 136 mov @stWndClass.lpszClassName,offset szClassName 137 138 139 140 141 invoke RegisterClassEx,addr @stWndClass 142 ;******************************************************************** 143 ; 建立并显示窗口 144 ;******************************************************************** 145 invoke CreateWindowEx,WS_EX_CLIENTEDGE,offset szClassName,offset szCaptionMain,\ 146 WS_OVERLAPPEDWINDOW,\ 147 100,100,600,400,\ 148 NULL,NULL,hInstance,NULL 149 mov hWinMain,eax 150 151 152 153 invoke ShowWindow,hWinMain,SW_SHOWNORMAL 154 invoke UpdateWindow,hWinMain 155 ;******************************************************************** 156 ; 消息循环 157 ;******************************************************************** 158 .while TRUE 159 invoke GetMessage,addr @stMsg,NULL,0,0 160 .break .if eax == 0 161 invoke TranslateMessage,addr @stMsg 162 invoke DispatchMessage,addr @stMsg 163 .endw 164 ret 165 166 _WinMain endp 167 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 168 start: 169 invoke LoadLibrary, offset szDll 170 mov hDll, eax 171 172 invoke GetProcAddress, hDll, offset szEnable 173 mov lpAeroEnb, eax 174 175 invoke GetProcAddress, hDll, offset szToClient 176 mov lpAero, eax 177 178 invoke GetProcAddress, hDll, offset szEnableClient 179 mov lpClientEnb, eax 180 181 push 1 182 call lpAeroEnb 183 184 call _WinMain 185 186 invoke ExitProcess,NULL 187 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 188 end start
文章浏览阅读1.3w次。转载自 http://www.miui.com/thread-2003672-1-1.html 当手机在刷错包或者误修改删除系统文件后会出现无法开机或者是移动定制(联通合约机)版想刷标准版,这时就会用到线刷,首先就是安装线刷驱动。 在XP和win7上线刷是比较方便的,用那个驱动自动安装版,直接就可以安装好,完成线刷。不过现在也有好多机友换成了win8/8.1系统,再使用这个_mt65驱动
文章浏览阅读1k次。SonarQube是一个代码质量管理平台,可以扫描监测代码并给出质量评价及修改建议,通过插件机制支持25+中开发语言,可以很容易与gradle\maven\jenkins等工具进行集成,是非常流行的代码质量管控平台。通CheckStyle、findbugs等工具定位不同,SonarQube定位于平台,有完善的管理机制及强大的管理页面,并通过插件支持checkstyle及findbugs等既有的流..._sonar的客户端区别
文章浏览阅读3.4k次,点赞2次,收藏27次。神经图灵机是LSTM、GRU的改进版本,本质上依然包含一个外部记忆结构、可对记忆进行读写操作,主要针对读写操作进行了改进,或者说提出了一种新的读写操作思路。神经图灵机之所以叫这个名字是因为它通过深度学习模型模拟了图灵机,但是我觉得如果先去介绍图灵机的概念,就会搞得很混乱,所以这里主要从神经图灵机改进了LSTM的哪些方面入手进行讲解,同时,由于模型的结构比较复杂,为了让思路更清晰,这次也会分开几..._神经图灵机方法改进
文章浏览阅读2.8k次。一、模型迭代方法机器学习模型在实际应用的场景,通常要根据新增的数据下进行模型的迭代,常见的模型迭代方法有以下几种:1、全量数据重新训练一个模型,直接合并历史训练数据与新增的数据,模型直接离线学习全量数据,学习得到一个全新的模型。优缺点:这也是实际最为常见的模型迭代方式,通常模型效果也是最好的,但这样模型迭代比较耗时,资源耗费比较多,实时性较差,特别是在大数据场景更为困难;2、模型融合的方法,将旧模..._模型迭代
文章浏览阅读2.3k次。1、前言上传图片一般采用异步上传的方式,但是异步上传带来不好的地方,就如果图片有改变或者删除,图片服务器端就会造成浪费。所以有时候就会和参数同步提交。笔者喜欢base64图片一起上传,但是图片过多时就会出现数据丢失等异常。因为tomcat的post请求默认是2M的长度限制。2、解决办法有两种:① 修改tomcat的servel.xml的配置文件,设置 maxPostSize=..._base64可以装换zip吗
文章浏览阅读1k次,点赞17次,收藏22次。Opencv自然场景文本识别系统(源码&教程)_opencv自然场景实时识别文字
文章浏览阅读1.3k次。拷贝虚拟机文件时间比较长,因为虚拟机 flat 文件很大,所以要等。脚本完成后,以复制虚拟机文件夹。将以下脚本内容写入文件。_exsi6.7快速克隆centos
文章浏览阅读2k次。本文主要实现基于二度好友的推荐。数学公式参考于:http://blog.csdn.net/qq_14950717/article/details/52197565测试数据为自己随手画的关系图把图片整理成文本信息如下:a b c d e f yb c a f gc a b dd c a e h q re f h d af e a b gg h f bh e g i di j m n ..._本关任务:使用 spark core 知识完成 " 好友推荐 " 的程序。
文章浏览阅读367次。南京大学高级程序设计期末复习总结,c++面向对象编程_南京大学高级程序设计
文章浏览阅读3.1k次,点赞2次,收藏12次。实现朴素贝叶斯分类器,并且根据李航《统计机器学习》第四章提供的数据训练与测试,结果与书中一致分别实现了朴素贝叶斯以及带有laplace平滑的朴素贝叶斯%书中例题实现朴素贝叶斯%特征1的取值集合A1=[1;2;3];%特征2的取值集合A2=[4;5;6];%S M LAValues={A1;A2};%Y的取值集合YValue=[-1;1];%数据集和T=[ 1,4,-1;..._朴素贝叶斯 matlab训练和测试输出
文章浏览阅读1.6k次。Markdown 文本换行_markdowntext 换行
文章浏览阅读6.7w次,点赞2次,收藏37次。win10 2016长期服务版激活错误解决方法:打开“注册表编辑器”;(Windows + R然后输入Regedit)修改SkipRearm的值为1:(在HKEY_LOCAL_MACHINE–》SOFTWARE–》Microsoft–》Windows NT–》CurrentVersion–》SoftwareProtectionPlatform里面,将SkipRearm的值修改为1)重..._错误: 0xc0000022 在运行 microsoft windows 非核心版本的计算机上,运行“slui.ex