- 博客(9)
- 资源 (4)
- 收藏
- 关注
转载 C# 属性上方的标识符说明
Browsable指定属性是否应该在属性窗口中显示,使用布尔值设置。一般情况下,对于常用的和比较重要的属性设置Browsable为true,否则,设置Browsable为false。 EditorBrowsable设置属性在编辑器中的可见性,比如设置在智能提示列表不显示或高级用户才可以看到该属性。 Category指定属性在属性浏览器中进行分组显示的类别。该设计时特性帮助可
2014-09-19 16:02:09 2181
转载 平台调用P-INVOKE完全掌握(完结篇),自定义Mashaler
这是P-INVOKE系列的最后一篇,也是万剑归宗的一篇,基本上只要函数签名对了,用他可以传递任何参数,函数的输入输出参数和返回值你也可以随心所欲地修改。把这个放在最后也是最完美的结局吧!! C++:测试代码如下: 1 struct Test 2 { 3 int test; 4 }; 5 6 //static Test _test; 7
2014-09-18 15:48:45 587
转载 平台调用P-INVOKE完全掌握, 反汇编细解结构体作为返回值
这篇解决上篇那个结构体作为返回值的问题。我们结合反汇编来探索这里面的秘密。如何反汇编?方法如下:在C++函数内下断点,调试到断点断下,右键菜单,选择"反汇编",反汇编是VS自带功能。 下面是几个简单的类: 1 struct Test1 2 { 3 int Count1; 4 }; 5 6 struct Test2 7 { 8 int
2014-09-18 15:46:11 629
转载 平台调用P-INVOKE完全掌握, 结构体和结构体指针
这篇讲关于结构体和结构体指针的P-INVOKE,关键有4个P-INVOKE类型,结构体作为输入输出参数。结构体指针作为输入输出参数。还有结构体内的成员类型分为:数组,指针,指针数组,结构体,结构体指针,结构体数组,结构体指针数组。当然还有类继承(这里只介绍了单继承)。其中有一个比较费解的是结构体作为返回值的P-INVOKE的奇怪现象,下一篇结合反汇编讲解。 第一:C++结构
2014-09-18 15:45:31 613
转载 平台调用P-INVOKE完全掌握, 结构体边界对齐和内存布局
在使用结构体指针,进行C#和C++的互相调用。边界对齐是一个大问题,因为边界对齐问题,结构体的成员并不是顺序在内存一个挨着一个的排序。而且在C++中可以使用#pragma pack(n)改变边界对齐的方案,那C#的结构体怎么对应C++的结构体那?(什么是边界对齐,这里不解释,不懂得可以去看看C++基本编程之类的书好好恶补一下.) 第一:最普通的情况下,C++代码没有
2014-09-18 15:44:46 516
转载 平台调用P-INVOKE完全掌握, 字符串和指针
可以说新手使用P-INVOKE最开始的头疼就是C#和C++的字符串传递,因为这里涉及到两个问题。第一:C#的string和C++的字符串首指针如何对应。第二:字符串还有ANSI和UNICODE(宽字符串)之分。 本文分三部分阐述:第一:字符串指针当输入参数,第二:字符串指针作为返回值,第三:字符串指针作为输入输出参数。 C++
2014-09-18 15:44:43 627
转载 平台调用P-INVOKE完全掌握,C#和C++互相调用
第一:C# 调用C++,使用P-INVOKE技术调用C++编写的动态链接库。而动态链接库导出的一般有两种调用协议,__stdcall和_cdecl。下面展示调用两种不同调用协议的方法:C++: 1 int __stdcall Test1(int i)2 {3 return printf("The __stdcall invoke convesion:%d\n",
2014-09-18 15:43:58 711
转载 平台调用P-INVOKE完全掌握, 指针大全
这篇是讲述P-INVOKE中,应对各种指针的方法。包括普通指针,字符串指针,二级指针,指针数组,函数指针,结构体指针。篇幅估计有点长,大家耐心点看。嘿嘿~~ 第一:普通指针,包括char *,short *,int *,__int64 *,这些指针进行平台调用是都对应C#的IntPtr类型,然后使用Marshal.ReadXXX()系列函数读取就可,写内存时使用Marshal.Wr
2014-09-18 15:43:44 735
转载 如何用 MEF 扩展应用程序
最近在写一篇关于如何扩展 Visual Studio 编辑器的文章时,用到了 MEF,因此打算写一篇文章提一下这个技术点。本篇文章并不打算详细介绍 MEF,只是一个最简单的入门,相信您在阅读本篇文章后,可以迅速开发出一个可扩展的应用程序。简 介MEF(Managed Extensibility Framework),是微软推出的一款用于搭建可扩展应用程序的框架,起初是独
2014-09-18 10:47:06 812
《C#开发Android应用实战 使用Mono for Android和.NET C#》源码2
2014-05-22
《C#开发Android应用实战 使用Mono for Android和.NET C#》源码1
2014-05-22
silverlight左侧导航源文件及样式模板
2013-06-28
解方程智能软件(双迎下载)
2008-12-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人