随笔分类 - C#
摘要:项目A(ClassLibrary1):有一个类:C# code注意 SayHello 的访问修饰符:protected internal abstract。这个原意可能有两个版本:1、允许 ClassLibrary1 程序集访问 HelloBase.SayHello 或者让派生类(其他程序集)访问(靠谱)。2、允许 ClassLibrary1 程序集以及所派生的程序集进行访问(显然不靠谱)。是的,我在其他程序集引用了 ClassLibrary1 并继承 HelloBase通过 VS 2010 的快捷方式,我得到了:C# code显然这是没错的。可是,为什么我在研究别人的源码时,发现已编译的程序
阅读全文
摘要:I think using the Windows Forms WebBrowser control is your best bet. To do this, you'll need your Silverlight app on a webpage, then you point your WebBrowser at the page's URI.To keep your WebBrowser control from acting like IE, I'd recommend setting the following:Calling methods on your form from
阅读全文
摘要:interface不是类型,interface是关键字,定义为 interface 是什么类型,是由其“变量”决定的。如果一定要强去理解“接口到底是什么类型”?那么它必然是引用类型(这句话与前面那句矛盾)。class也不是类型,只不过定义为 class 都是引用类型。看看实例吧:
阅读全文
摘要:1.WMI简介WMI是英文WindowsManagementInstrumentation的简写,它的功能主要是:访问本地主机的一些信息和服务,可以管理远程计算机(当然你必须要拥有足够的权限),比如:重启,关机,关闭进程,创建进程等。2.使用时首先添加System.Management.dll,然后引用usingSystem.Management;usingSystem.Threading;3.示...
阅读全文
摘要:一.Ring3Hook: 可以写个驱动程序, 只需要在初始化代码中用PsSetCreateProcessNotifyRoutine注册一个回调函数就可以在接下去任何process创建时获得通知。 然后只要想办法通知ring3的前端程序就可以了。 如果想在ring3通过api hook实现, 那么需要至少hook所有已存在process的创建进程的api, 据我所知, 至少需要hook各进程内ker...
阅读全文
摘要:后面一段else if WM_NCACTIVATE是不必要的,如果窗口一开始是用ShowWindow且NOACTIVATE来启动的话。转:http://blog.csdn.net/thirdapple/archive/2008/08/01/2755684.aspx
阅读全文
摘要:OpenExpressApp计划中包括建模工具,计划是采用MetaEdit+模型来作为元模型,使用codeproject的《WPF Diagram Designer》一系列文章来做为设计器实现参考,本篇介绍一下codeprojcet的这四个文章,推荐给对图形设计器感兴趣的人去看看,通过WPF的模板功能和其他功能可以很方便的设计出图形编辑器。等OEA参考实现后我会进一步详细说明如何制作建模工具。WP...
阅读全文
摘要:直接上代码,代码中有详细的注释。这个东西可真“别扭”(对多数 .NET 来讲,他们喜欢优雅、直接、明了、带注释、智能提示的编码方式)官网:http://npoi.codeplex.com/中文教程(旧版):http://www.cnblogs.com/tonyqus/archive/2009/04/12/1434209.html
阅读全文
摘要:http://msdn.microsoft.com/library/3y322t50.aspx原来微软早有了……
阅读全文
摘要:转自:http://www.csharpwin.com/csharpspace/2337.shtml还有就是:http://msdn.microsoft.com/zh-cn/library/system.componentmodel.licenseprovider(v=VS.80).aspx从今天起,您开发的的任何软件如果您愿意都可以为之加密--为您的软件制作一款注册机! 当您看完这篇文章时,您就...
阅读全文
摘要:到微软的网站上下载Windows Script Control,它是一个ActiveX(R) 控件,所以在.NET中使用我Interop了一下。下载安装完成后,新建一个C#的Windows应用程序项目,在解决方案资源管理器中选中引用节点,右键点击选择添加引用菜单,弹出添加引用对话框,单击浏览找到安装Windows Script Control的目录,选取msscript.ocx文件确定。那么在引用...
阅读全文
摘要:DesignSurface 实现设计器问题?http://topic.csdn.net/u/20090419/02/4c0fe387-c019-4159-ac60-71c04495e2b2.htmlDesignSurface 实现设计器问题?http://topic.csdn.net/u/20090419/02/4c0fe387-c019-4159-ac60-71c04495e2b2.htmlDe...
阅读全文
摘要:1. 我们有一个test.exe的WinForm程序,这是我们要加壳的目标程序。2. 新建一个WinForm工程,删除Form1,然后新建一个类。如下。3. 将test.exe 拷贝到该工程目录,作为嵌入式资源。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.c...
阅读全文
摘要:这个难题可是整整搞了我2天时候。直至目前,才算有一个解决方案。经过 Xenocode 的 WinForm 程序,如果你想实现一键式自动更新(就是不需要客户点一下点一下),那是相当困难的。原因是 Xenocode 不但混淆了代码,还进行“加壳”保护了!至于什么是加壳,我个人理解是:在一个程序里运行另外一个程序(没有看过相关的知识,见笑了)。我来说说我的自动升级构思:代码 Co...
阅读全文
摘要:在 VS2010 编译器中,创建一个 3.5 的程序,随手写一个应用程序作为测试。尝试了一下,竟然可以!谢天谢地,默认参数在编写类库作用是很大的。唯一不足的是,如果想在 VS2008 中调用 VS2010编写的类库,默认参数将会失去作用。庆幸的是,用2010编写包含默认参数的 3.5 的应用程序,在 3.5 的环境中是可以正常使用的。有兴趣的话,可以试试!如果你知道为什么,麻烦您告诉我。谢谢咯!
阅读全文
摘要:在发射一个函数时,如果这个函数包含了对当前窗体的 Form.Close(),那么很可能在 Application.Run 处报错。引发这个原因,我在反汇编跟踪时,最终发现了问题点。原函数如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--priv...
阅读全文
摘要:控件的设计时支持控件的设计时(design-time)支持是开发自定义控件的一个重要内容,也是开发的难点。那么什么是控件的设计时支持呢?控件的设计时是指控件运行在开发环境的可视化设计器中的这一段时间,在这段时间内开发者使用它们在VS2005开发环境中设计用户界面以及设定控件的属性。与之相对的是控件的运行时,运行时是指应用程序编译生成后,控件随应用程序启动并运行的这一阶段。控件最终的是随应用程序发布...
阅读全文
摘要:usingSystem.Runtime.InteropServices;[DllImport("user32.dll")]publicstaticexternboolReleaseCapture();[DllImport("user32.dll")]publicstaticexternboolSendMessage(IntPtrhwnd,intwMsg,intwParam,intlParam);p...
阅读全文
摘要:获取内网IP代码通过外部网站返回得到内网外部IP C#版staticstringGetIP(){Uriuri=newUri("http://www.ikaka.com/ip/index.asp");System.Net.HttpWebRequestreq=(System.Net.HttpWebRequest)System.Net.WebRequest.Create(uri);req.Method=...
阅读全文
摘要:首页,要说明几个概念:Win32 平台是消息驱动模式.Net 框架是事件驱动模式标题所指的 “控制外部程序”,外部程序是指与本程序无内在相关性的另外一个程序基于上面提到的,对于.NET的winform程序,在默认情况下(即未对接收消息的事件做自定义处理,说白了:就是没有重写/覆写(override)窗体(Form)的DefWndProc事件),.Net 的 winform ...
阅读全文