人在旅途

除了疲惫,还有一路风景

整数运算实现四舍五入

在进行除法运算时难免会遇到四舍五入的问题,如果使用整数运算可能误差较大,因为纯整数运算会把整数部分全舍去,如果使用浮点运算,则会增加运算量,特别是运算量比较大的算法中或在移动设备和移动设备这些资源比较紧张的应用上,这种开销是值得考虑的。下面代码就是使用整数运算实现四舍五入的一个例子 c = ...

2012-07-15 16:44:22

阅读数 2109

评论数 0

C#调用C/C++ 动态链接库DLL(四) -- 调用C++类

对于在C#中调用C++类的情况比较复杂,至少有三种情况,见下文的Introduction部分,并详细讲述了P/Invoke 以下内容转自: http://www.codeproject.com/Articles/14180/Using-Unmanaged-C-Libraries-DLL...

2012-06-24 16:14:29

阅读数 5729

评论数 1

C#调用C/C++ 动态链接库DLL(三)

2。 在C#中创建DLL接口的声明 C#没有全局函数,必须使用静态函数实现全局函数。 1)  DllImport类似C++中的__declspec(dllimport),第一个参数为必选参数,为DLL的路径,一般以相对路径即可,只需要将DLL文件放到工作目录中即可 2) EntryPoint...

2012-06-24 15:24:11

阅读数 16914

评论数 0

C#调用C/C++ 动态链接库DLL(二)

此次示例包含了常用类型参数的转换及传递包括 1) 基本类型:int, unsigned char, float, double等 2) 指针类型; 3) 引用 4) 一维数组、二维数组 5) 简单结构体 6) 结构体中包含数组 7) 字符串类型 8) bool类型 后续再...

2012-06-24 15:02:36

阅读数 4837

评论数 1

C#调用C/C++ 动态链接库DLL(一)

在一些应用系统中经常会用到C#调用C++的一些代码,特别是结构体、指针、引用等类型的传递。总结一下常用的一些类型传递。官方关于C#与C++互操作的文档 http://msdn.microsoft.com/en-us/library/ms173184.aspx,官方的一个例子:http://msd...

2012-06-24 14:53:26

阅读数 4594

评论数 0

一个简单的测试框架(C#版)

端午节有空本来是为整理一下C#调用C/C++库的方法,为了测试用例顺便实现了一直想实现的一个小的测试框架跟同事们分享一下,NUnit搞得已经比较复杂了,这个非常简单理解起来容易,用起来比较方便,谁再想用其它功能再自己加吧,如果功能要求比较多就直接用NUnit好了,不要再自己造轮子了。 此篇献给伟...

2012-06-24 14:43:42

阅读数 4211

评论数 0

WPF绘制网格线

新的软件要绘制网格,像VISIO一样的底纹便于绘图时对齐,在WinForm下,在Paint事件中通过计算通过Graphics在画布上一条线一条线地画就行了,显然会慢点,而且代码比较多。   在WPF中,可以更简单,通过绘制适量直线不会方便而且可以提高性能,可以创建一个Group,然后将所有的直线...

2011-11-20 18:17:28

阅读数 7808

评论数 1

Ribbon使用笔记

1. 定义按钮组中各按钮大小 通过使用ribbon:RibbonControlSizeDefinition ...

2011-11-19 00:04:35

阅读数 2480

评论数 0

破解 bytescout Barcode SDK (2.2.0.343)

声明:本文纯粹出于学习目的,如果用于商业目的造成法律责任后果自负。 bytescout 的收费条码SDK库很不错,需要购买License,但毕竟是用.Net语言写的,如何保证license不失效呢?这周末不加班,没事儿就试着破解一下,着实还费点儿劲,时间加到一起估计得有10个小时以上了,...

2011-10-23 22:27:22

阅读数 2901

评论数 2

破解Visual SVN

以前很少在visual studio中用直接用SVN,都在使用小乌龟,最后发现用多了,还是用个集成的插件比较好,虽然有个开源的,但感觉不太好用,还是visual SVN比较好用,以前也不想着自己去破解它,今天偶然在搜到文章 http://www.heiqu.com/show-7

2011-09-16 11:48:03

阅读数 9348

评论数 2

都是visual studio 2010 BUG惹的祸

这两天项目在用C#调用C++编写的一些库时遇到一个很头痛的问题,用C++对DLL进行测试没有任何问题,可用C#进行调用时居然所有输出参数均未被改变,也就是输出没有任何输出,但返回值是正确的。同事调了两天,曾怀疑是函数调用约定问题,于是不断地在__cdecl和__stdcall的各

2011-09-15 22:46:46

阅读数 1494

评论数 0

WebBrowser弹出窗口之(三) – alert( ) / confirm( )

    alert/confirm等javascript函数产生的对话框是标准的windows对话框,例如 通过HOOK对话框的初始化消息WM_INITDIALOG,检测其标题是否为“来自网页的消息”(英文系统需要匹配项文字符串)(因为钩子是针对主线程的,不会捕获到其它进程的消息,如IE的...

2011-03-11 15:19:00

阅读数 1909

评论数 0

C#获取程序集信息

软件安装的点过多,有时候为特定某些点更新程序,而其它可能不更新,为了便于维护就加了个对话框,来显示当前软件的所有程序集版本,方便随时查看,或者将信息上传到服务器便于统一管理。 C#生成的.net DLL程序集与C++成生的DLL共享库作用是一样的,但其本质是不同的,C#生成的DLL包含的是中间语...

2011-03-01 22:43:00

阅读数 4442

评论数 0

慎用Application.DoEvents( )

如果在UI的消息处理函数中进行较大量的计算或对界面进行操作,占用较长时间时可以在中间调用Application.DoEvents来响应用户操作,但不建议这样做,替代的方法就是在后台线程中进行这些操作,用线程池是一个不错的方法(例如System.Threading.ThreadPool)。 该函数...

2011-01-21 12:54:00

阅读数 5089

评论数 1

改善WebBrowser性能

C#中使用.NET封装的WebBrowser只支持单线程模式,大部分对其操作必须在创建它的线程中执行,不可以在其它线程中调用其方法或属性,用起来非常不方便。而且,其性能受到明显影响,特别是程序的线程较多的时候,WebBrowser反应非常慢,为了提高其响应速度,我提高了其线程的优先级,还是比较管用...

2011-01-20 17:40:00

阅读数 4698

评论数 2

WebBrowser.IsBusy 在.Net 4.0中的BUG

属性IsBusy在文档中说明(http://msdn.microsoft.com/en-us/library/ek4h3t66(v=VS.100).aspx?appId=Dev10IDEF1&l=EN-US&k=k(SYSTEM.WINDOWS.FORMS.WEBBROWSER.I...

2011-01-18 17:10:00

阅读数 1824

评论数 0

WebBrowser弹出窗口之(二)––showModalDialog( ) & showModelessDialog( )

showModalDialog并不创建新的浏览器窗口,也不创建新的浏览器对象,而是在WebBrowser的同一个线程中创建的窗口,而showModelessDialog( )则是在新的线程中创建的窗口,所以处理方式不相同。 当showModalDialog( )被调用后,浏览器线程会创建一个对话...

2010-12-28 21:57:00

阅读数 9460

评论数 31

C#插件技术基础

从原理上很简单,先定义统一接口,主程序根据预定义的接口加载DLL,示例代码 public static int Test()         {             try             {                 System.IO.FileInf...

2010-12-28 20:26:00

阅读数 1659

评论数 0

WebBrowser弹出窗口之(一) -- window.open( )

1. 对于新打开的窗口,在打开时会触发WebBrowser的NewWindow3事件,触发该事件有以下几种操作: 1) 按住SHIFT或CTRL键时点击鼠标; 2) 在链接的右键菜单中选择“在新窗口中打开”或“在新标签中打工”; 3) 链接的目标窗口不存在或者为“_blank...

2010-12-21 15:57:00

阅读数 13380

评论数 1

System.Diagnostics.Debug一组奇怪的重载函数WriteLine

<br /><br />昨天想当然System.Diagnostics.Debug.WriteLine函数与System.Console.WriteLine函数具有相同的函数定义,所以来了类似这么一句: <br />string name = “Noock”...

2010-12-21 14:11:00

阅读数 2700

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭