随笔分类 -  C#

线程间操作无效: 从不是创建控件的线程访问它的三种方法
摘要:今天遇到这个问题,百度了下,把解决的方法总结出来。 我们在ui线程创建的子线程操作ui控件时,系统提示错误详细信息为: 线程间操作无效: 从不是创建控件“XXX”的线程访问它。 就我知道的有三种方法,先看一下msdn的介绍: 访问 Windows 窗体控件本质上不是线程安全的。如果有两个或多个线程操作某一控件的状态,则可能会迫使该控件进入一种不一致的状态。还可能出现其他与线程相关的 bug,包括争用情况和死锁。确保以线程安全方式访问控件非常重要。 阅读全文

posted @ 2010-12-19 21:26 年轻的蜗牛 阅读(56974) 评论(1) 推荐(1)

C# 加壳.exe程序文件(调用嵌入资源的exe文件)
摘要:在DOS时代,我们经常采取加壳的方式来保护我们的程序,下面的代码是一个模仿加壳程序。 1. 我们有一个test.exe的WinForm程序,这是我们要加壳的目标程序。 2. 新建一个WinForm工程,删除Form1,然后新建一个类。如下。 3. 将test.exe 拷贝到该工程目录,作为嵌入式资源。 阅读全文

posted @ 2010-05-13 17:32 年轻的蜗牛 阅读(2097) 评论(1) 推荐(0)

c# xml序列化与反序列化
摘要:原先一直用BinaryFormatter来序列化挺好,可是最近发现在WinCE下是没有办法进行BinaryFormatter操作,很不爽,只能改成了BinaryWriter和BinaryReader来读写,突然想到能不能用XML来序列化?于是在网上查了些资料便写了些实践性代码,做些记录,避免以后忘记。 阅读全文

posted @ 2010-05-06 17:34 年轻的蜗牛 阅读(802) 评论(0) 推荐(0)

C# 特性(Attribute)详细介绍
摘要:我们肯定Attribute是一个类,下面是msdn文档对它的描述: 公共语言运行时允许你添加类似关键字的描述声明,叫做attributes, 它对程序中的元素进行标注,如类型、字段、方法和属性等。Attributes和Microsoft .NET Framework文件的元数据保存在一起,可以用来向运行时描述你的代码,或者在程序运行的时候影响应用程序的行为。 阅读全文

posted @ 2009-07-18 11:14 年轻的蜗牛 阅读(22573) 评论(7) 推荐(9)