随笔分类 -  windows开发

关于windows软件的开发技术
摘要:在软件的开发测试,通常使用的是windows评估版本。但是有时候它的使用期限不满足你的需求。所以你可以用一下方法来延长评估版的时间。延長使用期限跟Windows Server 2008延長使用天數的方法一樣,都可以重設授權 5 次,差別在於,執行重設授權並重新開機之後,Windows 就自動啟用了,... 阅读全文
posted @ 2014-04-25 09:46 moonz-wu 阅读(1449) 评论(0) 推荐(0) 编辑
摘要:今天在项目中调查一个defect,发现SQL server对GUID列排序与ClusterIndex的特殊处理。这里涉及到两个知识点,一是SQL server 对GUID列的排序算法实现,二是Cluster Index和NonCluster Index的区别。先说一下SQL Server对GUID列的排序是如何实现的。具体文章在这:http://blogs.msdn.com/b/sqlprogrammability/archive/2006/11/06/how-are-guids-compared-in-sql-server-2005.aspx简要的算法就是,GUID 格式是 {0000000 阅读全文
posted @ 2011-12-29 07:25 moonz-wu 阅读(2363) 评论(0) 推荐(0) 编辑
摘要:众所周知,windows中的进程是可以有父子关系的,拥有父子关系的进程,一旦父进程结束,子进程有会随之退出。但是如果进程之间没有父子关系,我们如何让子进程在父进程退出是也同时跟着退出呢?方法有很多,本文介绍其中的一种利用父进程ID的方案,现实的原理很简单:先获取父进程的ID,然后通过ID来获取父进程Handle,通过监视父进程的Handle来决定子进程是否退出。所以,这里的关键就是如何获取父进程的... 阅读全文
posted @ 2010-08-10 23:40 moonz-wu 阅读(7414) 评论(1) 推荐(0) 编辑
摘要:今天又差点被JNI搞的抓狂了,本来跑的好好的程序因为我加了JUnit后突然跑不通了。于是开始了郁闷的排错过程。经过了多次的分析和调试,最后发现原来是Java的类名改变导致的。对于JNI通常我们是先定义一个Java类,然后根据类来生成JNI的C++头文件,最后在Java中去load这个文件来调用函数。看一个例子,假设我们有一个类:public class Person { public native... 阅读全文
posted @ 2010-06-13 16:38 moonz-wu 阅读(189) 评论(1) 推荐(0) 编辑
摘要:用过java的朋友们都知道JNI是java与C++等native程序交互的一个强大工具。它支持从java虚拟机里面访问系统的本地程序,不管是C++/C,VB等,只要是能变成DLL的(这里指windows平台,Linux平台的应该是so文件),Java都可以通过JNI来调用;反过来,C++要调用java程序也可以通过JNI实现。不过,今天我就遇到了一个古怪的JNI调用问题。是这样的逻辑1. Java... 阅读全文
posted @ 2010-06-10 00:02 moonz-wu 阅读(395) 评论(0) 推荐(0) 编辑
摘要:Today, I was looking for geting a solution to insert a lot of line into SQL server with high performance. I got a way is using BULK INSERT ... to insert huge record into table. It is really high perfo... 阅读全文
posted @ 2010-05-31 18:08 moonz-wu 阅读(487) 评论(0) 推荐(0) 编辑
摘要:网上有很多的例子都说可以修改linker的subsystem熟悉来实现。#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" )但这种方法我们需要自己提供一个额外的WinMain入口函数。事实上一种比较简单的方法去隐藏控制台程序的窗口是利用 FreeConsole() 函数来实现。对于的函数Alloc... 阅读全文
posted @ 2010-05-11 23:56 moonz-wu 阅读(518) 评论(0) 推荐(0) 编辑
摘要:Today, we want to talk about a little known feature in Windows Server 2008 R2 that could be described as RemoteApp for Hyper-V. Like Microsoft RemoteApp, it allows users to access a specific hosted ap... 阅读全文
posted @ 2010-01-17 17:43 moonz-wu 阅读(2208) 评论(0) 推荐(0) 编辑
摘要:网络使用率(network utilization), 线路速度(link speed) 阅读全文
posted @ 2010-01-06 23:08 moonz-wu 阅读(4943) 评论(3) 推荐(0) 编辑
摘要:最近遇到了一个比较麻烦的问题,一直也没找到很好的解决方案。问题:既要获取网卡利用率,又要获取网卡连接速度解决方案:获取网卡利用率通过PDH库可以获取网卡的传输率等信息。获取网卡连接速度1. 使用WMI查询2. 使用IP helper接口3. 使用NetMonitor接口4. 查注册表这里麻烦的地方就是,因为如果通过PDH获取到利用率之后,我们只能获得到网卡的静态信息只有这个Network inte... 阅读全文
posted @ 2009-09-25 23:47 moonz-wu 阅读(342) 评论(0) 推荐(0) 编辑
摘要:关于DLL内存释放的好文章That DLL is violating the “It is not safe to call FreeLibrary from a DllMain routine” stricture, because (a) There’s no way of knowing if CoInitialize has been called on the current th... 阅读全文
posted @ 2009-01-04 23:48 moonz-wu 阅读(344) 评论(0) 推荐(0) 编辑
摘要:wprintf 和 wcout 这篇文章应该是[netsin]的成果,我勤快,记下来。注:wprintf是C的标准库函数,但wcout不是C++的标准成员,C++中的 L"……" 是宽字符,却未必是unicode字符,这与编译器实现相关。[乾坤一笑]说:为什么 C/C++ 语言把 L"xx" 定义为由实现决定的呢?这显然是为了 C/C++ 的普适性、可移植性。Bjarne 的观点认为,C++ 的... 阅读全文
posted @ 2008-12-30 20:24 moonz-wu 阅读(5011) 评论(0) 推荐(0) 编辑
摘要:对于编程,我发现自己还很菜,还有很多东西要学习。今天又从我们公司那位牛人那里学了一课,什么叫程序员。有句话说的好:“如果你用了所有的智慧来写代码,那么你就没有足够的能力来调试程序”。这句话对于我们这些比较菜的程序员来说,有点伤感,不过的确是一个事实。作为一个程序员,不仅仅只是能完成功能,而是要很好的完成,更重要的是当功能出现问题时,你要能很好的找到原因并解决它。下面是今天发生在我身上的一件事情,对... 阅读全文
posted @ 2008-09-11 23:21 moonz-wu 阅读(3070) 评论(0) 推荐(0) 编辑
摘要:I make a sample of Event object to show this issue:How to create a no security level kernel object? CodeCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-... 阅读全文
posted @ 2008-08-29 21:26 moonz-wu 阅读(405) 评论(0) 推荐(0) 编辑
摘要:我们经常遇到这样的情况,在程序运行过程中,突然的就crash掉了,并且又是在customer那里crash的。这个时候我们需要借助于dump文件来查找发生exception的位置。下面的代码是创建一个MiniDump文件,至于为什么叫Mini,并不是因为小或是内容少的原因,而是相对于FullDump而言,MiniDump文件只保存了进程在crash的是部分关键的virtual memory信息。 ... 阅读全文
posted @ 2008-08-21 07:45 moonz-wu 阅读(2186) 评论(1) 推荐(0) 编辑
摘要:. 远程过程调用RPC基本过程如下:(1) 调用者调用本地stub中的一个过程(2) 这个stub过程把有关的参数组装成一个消息包或一组消息包, 形成一条消息. 运行此执行过程的远程场点的IP地址和执行该过程的进程ID号也包含在这条消息中.(3) 将这条消息发送给对应的RPC runtime(RPC运行库)子程序, 由这个子程序将消息发送到Server.(4) 在接收到这条消息后, server端... 阅读全文
posted @ 2008-05-08 23:36 moonz-wu 阅读(1898) 评论(0) 推荐(2) 编辑
摘要:原文链接 拷贝目录及其子目录和文件(除隐含和系统文件)。 使用这个命令,可以拷贝一个目录中的所有文件,包括该目录中的子目录的所有文件。 语法 : XCOPY source [destination][/Y][/-Y] [/A|/M] [/D:date] [/P] [/S[/E]] [/V] [/W] 参数 : source 指定要拷贝的文件名和位置,必须包含驱动器或路径。 destina... 阅读全文
posted @ 2008-01-29 15:11 moonz-wu 阅读(653) 评论(0) 推荐(0) 编辑
摘要:原文Shutdown.exe - 用来关闭或重新启动计算机。并支持将重新启动解释写入event log。 用法: shutdown [/i | /l | /s | /r | /a | /p | /h | [/m \\computer][/t xxx][/d [p:]xx:yy [/c "comme 没有参数 显示帮助。这与键入 /? 是一样的 /? ... 阅读全文
posted @ 2008-01-16 10:33 moonz-wu 阅读(335) 评论(0) 推荐(0) 编辑
摘要:1. 产生鼠标按住左键或右键的连续调用在开发的时候我们有时需要产生一个鼠标按下后的连续事件,比如说滚动条的上下箭头按钮,按住后就会连续滚动。那么如何对一个普通按钮来产生这样的调用呢?可以有多种方法去解决比如时钟,循环,线程和Application.DoEvent,不过比较好并且简单的方法是用后台线程,所以我在这里只讲用线程的模式。比如你有个一个按钮叫_pgdnBtn, 你想对这个按钮的左键按下进行... 阅读全文
posted @ 2007-09-03 12:18 moonz-wu 阅读(378) 评论(0) 推荐(0) 编辑
摘要:这是一个老外的文章,上面详细的列出来很多编译错误的原因和解决方案。http://www.vijaymukhi.com/documents/books/csadv/chap10.htm我们很多人对一个语言的了解停留在3/4的水平上的时候,写程序时会遇到很多问题,大部分都是自己理解的问题。我今天就碰到一个,错误提示是这样的:Error 1 Inconsistent accessibility: par... 阅读全文
posted @ 2007-08-24 17:27 moonz-wu 阅读(916) 评论(0) 推荐(0) 编辑