紫雨轩 .Net, DNGuard HVM , .Net VMProtect

DNGuard HVM - Advanced .NET Code Protection Technology

导航

随笔分类 -  C# Winform编程

winform相关
ComboBox 使用数据绑定时 Sorted 属性的bug
摘要:调查一个奇怪的系统异常时发现的这个bug,现象就是用户在ComboBox里面选择一项后,程序在SelectIndexChanged 事件中根据用户选择刷新数据时出现错误。跟踪调试后才发现原来是SelectedValue 值和用户选择的Item项不一致。 但是为什么会出现这样奇怪的错误呢? 阅读全文

posted @ 2009-06-25 17:15 紫雨轩 .Net 阅读(2786) 评论(11) 推荐(1)

DNGuard Enterprise v2.95 released
摘要:Version 2.9.5 (July 10, 2008)[+] Add secure callback sdk and Document.[*] Improved compatibility .兼容 vs2008 sp1 beta1 及 .Net Framework 3.5 sp1 beta1.[*] Fixed Generic Type handle issue.[*] Fixed .net1... 阅读全文

posted @ 2008-07-10 23:46 紫雨轩 .Net 阅读(932) 评论(2) 推荐(0)

在 FlexGrid 控件中指定最右侧显示的列
摘要:FlexGrid 控件提供了指定左侧显示列的功能。因项目的需要,要求能够指定最右侧显示的列。 实现方法: 获取表格客户区宽度,然后通过每列的宽度计算出水平滚动条的位置。 但是有一个麻烦,就是垂直滚动条的问题。 首先要能判断是否有垂直滚动条, 然后有垂直滚动条时,需要减出垂直滚动条的宽度, 但是控件没有提供这方面的接口 阅读全文

posted @ 2008-06-26 11:22 紫雨轩 .Net 阅读(1863) 评论(6) 推荐(0)

采用Native 引导方式的.Net加密保护
摘要:这类加密保护方式属于整体程序集的加密保护. 这个方法首要解决的问题就是 native code 和 .Net Code如何交互. 这里介绍三种实现方式. 阅读全文

posted @ 2008-02-01 10:12 紫雨轩 .Net 阅读(3837) 评论(8) 推荐(0)

C#中使用晚绑定实现压缩Access数据库
摘要:C#中使用晚绑定实现压缩Access数据库. VB对Com后期绑定支持得很好,在C#中可以使用反射来实现. 阅读全文

posted @ 2008-01-25 14:20 紫雨轩 .Net 阅读(2764) 评论(6) 推荐(0)

直接在.Net程序(C#)中执行 native code
摘要:不使用C++CLI,不使用 native dll. 直接在 .Net 程序 中之行 native code。 阅读全文

posted @ 2008-01-22 21:46 紫雨轩 .Net 阅读(5367) 评论(12) 推荐(0)

C#复杂表达式的问题
摘要:测试程序发现了一个bug, 几经调试最后定位到一条复杂表达式语句的计算结果不正确. 代码中用复杂表达式不是一个好习惯,调试起来很不方便. 为了方便跟踪调试,看看究竟是表达式的那部分计算出了问题. 就先把表达式拆开来写了. 再运行, 嗨, bug没有了. 跟踪看了表达式最终计算结果,也正确了. 阅读全文

posted @ 2008-01-10 17:25 紫雨轩 .Net 阅读(2681) 评论(14) 推荐(0)

.Net中的数字类型四则运算的有趣问题
摘要:看看下面的代码: 你觉得这段代码能否正确执行?结果会怎样? sbyte sba, sbb,sbv; sba = 1; sbb = 2; sbv = sba + sbb; byte ba, bb, bv; ba = 1; bb = 2; bv = ba + bb; 阅读全文

posted @ 2007-11-29 11:38 紫雨轩 .Net 阅读(3262) 评论(55) 推荐(0)

讨论 winform 引擎以及 CancelButton,OKButton 的实现原理
摘要:前面提到了form关闭时的两个奇怪现象,有不少朋友参与了讨论。 有些朋友还没有看清楚问题的所在就很轻率的评论。 A.Z. 在讨论中已经找到的问题的基本所在,问题关键还是在 CalledClosing 这个变量的状态。 这个问题要从另外一个奇怪现象说起。 为什么直接给 form的DialogResult属性赋值会导致form关闭? 这个属性的set函数如下: public void set_DialogResult(DialogResult value) { if (!ClientUtils.IsEnumValid(value, (int) value, 0, 7)) { throw new InvalidEnumArgumentException("value", (int) value, typeof(DialogResult)); } this.dialogResult = value; } 很明显,这个set函数不可能直接导致 form的关闭。 阅读全文

posted @ 2007-09-24 18:03 紫雨轩 .Net 阅读(3006) 评论(14) 推荐(0)

form关闭时的一个奇特现象
摘要:今天查一个错误时发现这个问题。 有一个frmEdit。在Closing事件里面判断数据是否修改,然后提示用户是否需要保存数据。 提供了三个按钮,yes,no,cancel。 yes:保存数据,关闭窗体。 no:直接关闭窗体。 cancel:不关闭窗体。 实际运行,点yes,cancel,处理都对,但是点 no,就会重复弹出这个对话框, 如果一直点 no的话,就会一直出现。 看一眼代码没有发现明显问题,实际调试才发现问题所在。 代码如下: 阅读全文

posted @ 2007-09-21 11:35 紫雨轩 .Net 阅读(3479) 评论(50) 推荐(0)

DataGridView 绑定DataTable方式编辑保存的bug?
摘要:DataGridView 绑定DataTable方式,进行编辑。如果只在表格的某一行内进行编辑,且保持焦点只在这一行变动。进行数据保存时这一行的变更就无法正常保存。然后我有试着在保存之前调用 DataGridView 的EndEdit .结果还是无法保存这一行的修改.最后没有办法就试了试 bindingSource.先将 DataTable 绑定到 bindingSource. 再将 bindin... 阅读全文

posted @ 2006-07-14 10:10 紫雨轩 .Net 阅读(9519) 评论(13) 推荐(0)

在 C# 中动态调用 native dll 的导出函数
摘要:在 C++ 中我们能够通过 LoadLibrary, GetProcAddress 来动态调用 dll 的导出函数. 在 C# 中也能够用这样的方式吗? 阅读全文

posted @ 2006-07-13 14:28 紫雨轩 .Net 阅读(6446) 评论(18) 推荐(0)

从 DataGridView 控件 托放数据 到 TreeView控件(二)
摘要:前面我们只处理了 DataGridView 的mousedown事件, 现在要处理 mousedown, mousemove, mouseup这三个事件来完成这个任务. 大致过程如下: 在MouseDown事件里面和之前一样处理,只是不启动拖放操作. 而是保存要拖放的数据, 以及建立一个小的矩形框(根据系统DragSize信息). 然后在 MouseMove 事件里面判断 是否已经准备好拖放了,如果准备好了,就启动拖放操作. (注:鼠标在小矩形框范围内的移动不启动拖放操作) MouseUp里面清除哪些标记量. 这样就能处理左键单击的选择和 左键拖放了 阅读全文

posted @ 2006-07-13 10:15 紫雨轩 .Net 阅读(2936) 评论(1) 推荐(1)

从 DataGridView 控件 托放数据 到 TreeView控件
摘要:实现方法,在datagridview的mousedown事件中开始 托放。然后在treeview 的 DragEnter 中接收托放。最后在treeview的 DragDrop 中处理托放结果。注:treeview的allowdrop属性要设置为 true。: 1private void dataGridView1_MouseDown(object sender, MouseEventArgs ... 阅读全文

posted @ 2006-07-13 01:28 紫雨轩 .Net 阅读(9405) 评论(3) 推荐(0)

DateTimePicker 数据绑定遭遇 null 值的解决方法
摘要:将字段 assessortime 绑定到 DateTimePicker1.DateTimePicker1.DataBindings.Add("Value", bindingSource1, "assessortime");如果字段 assessortime的值 为 null 时 就会出现异常.后来发现 用 vs2005 的数据源 直接拖到窗体上的 DateTimePicker控件的绑定,遇到 nu... 阅读全文

posted @ 2006-07-11 17:54 紫雨轩 .Net 阅读(2458) 评论(1) 推荐(0)

ComboBox 绑定到数据表中一个列的问题
摘要:数据表: Users字段 ID ,类型 int字段 UserName, 类型 string字段 Group, 类型 int. (2 代表 管理员, 1 代表 认证用户 , 0 代表 注册用户)在一个winform上有一个 bindingNavigator, bindingNavigator1一个 bindingSource bindingSource1.一个textbox txtName.一个 ... 阅读全文

posted @ 2006-07-11 10:11 紫雨轩 .Net 阅读(4964) 评论(1) 推荐(0)