摘要: 一.基础篇 C#不像C++,他本身是没有联合Union的,但是可以通过手动控制结构体每个元素的位置来实现,这需要结合使用StructLayoutAttribute、LayoutKind以及FieldOffsetAttribute。使用它们的时候必须引用System.Runtime.InteropSe 阅读全文
posted @ 2016-01-28 14:08 夏至千秋 阅读(20961) 评论(0) 推荐(4) 编辑
摘要: 之前做Opengl程序,用的的C#的SharpGL这个库,里面有各种奇怪绑定的函数,比如原型为: void glInterleavedArrays(uint format, int stride, void * pointer); 的函数被他绑定成: private static extern vo 阅读全文
posted @ 2016-01-27 16:11 夏至千秋 阅读(7834) 评论(1) 推荐(2) 编辑
摘要: 一般在网上搜C++如何调用C#的函数,出来的结果都是做成COM组件,但是这种方法dll安装麻烦,需要注册COM组件,需要管理员权限,调试麻烦,经常需要重启机器,反正有诸多不便。 然后在看《CLR via C#》时看到一种方法,可以免去这种苦恼。少废话,先上代码。C#类库的:namespace Cl... 阅读全文
posted @ 2016-01-27 11:44 夏至千秋 阅读(5271) 评论(1) 推荐(0) 编辑
摘要: 之前,将数组、结构体等转换为IntPtr使用的是Marshal.Copy()、Marshal.StructureToPtr(),但是有个问题自定义的结构体数组没法这样转化,一般网上给出的解决方法就是通过unsafe的代码段使用指针来转换。 今天看到一个函数GCHandle.Alloc(),其描述如... 阅读全文
posted @ 2016-01-26 16:15 夏至千秋 阅读(2042) 评论(1) 推荐(1) 编辑
摘要: 一直想找一个好用的日子类,今天偶然的机会看到了log4net这个类库,过来学习一下。log4net是.NET框架下的一个日子类库,官网是http://logging.apache.org/log4net/,打开就一股浓浓的Apache 风格扑鼻而来。下载地址:http://apache.fayea.... 阅读全文
posted @ 2016-01-18 14:14 夏至千秋 阅读(664) 评论(0) 推荐(0) 编辑
摘要: 我们都知道在C#中可以通过Environment.OSVersion来判断当前操作系统,下面是操作系统和主次版本的对应关系: 操作系统 主版本.次版本 Windows 10 10.0* Windows Server 2016 Technical Preview 10.0* Windows 8.1 6.3* Windows Server 2012 R2 6.3* Windows 8 ... 阅读全文
posted @ 2016-01-18 14:06 夏至千秋 阅读(13582) 评论(3) 推荐(7) 编辑
摘要: 今天看公司以前的代码,用的是.NRT Reactor v4.4.7.5进行的混淆,直接使用.NET Reflector v8.5.0.179 是无法查看的,提示:Invalid number of data directories in NT header. 在网上查资料得知可以用de4dot来脱壳 阅读全文
posted @ 2016-01-18 14:03 夏至千秋 阅读(3189) 评论(0) 推荐(0) 编辑
摘要: 问题描述 这几天帮同事调试DSP TMS320F28335,这鬼东西蛋疼死了。char是16bit的,16位就是他的最小内存单元。但是PC机串口发过来的有8bit的数据,然后转换就出问题。 一开始不知道char是16bit,让UInt32 * a直接等于char b[4],然后中间出来好多0x00,... 阅读全文
posted @ 2016-01-18 13:58 夏至千秋 阅读(1988) 评论(0) 推荐(1) 编辑
摘要: 一、问题产生 在C#和C++中有这样一个函数:void Sleep(int Timeout),可以让线程暂停指定的毫秒数。 但是我在win8下调用这个函数实现按照固定频率发送udp数据包时,会有一个问题。当Timeout<15ms左右是时,无论怎么减小Timeout,一秒钟发送的数据包和Timeou 阅读全文
posted @ 2016-01-18 13:53 夏至千秋 阅读(8118) 评论(0) 推荐(1) 编辑
摘要: 问题描述:用QT5做了个MDI多窗体应用程序,想把子窗体全屏显示,用网上的方法,但总是遇到问题。网上的解决方法原文在这:http://www.cnblogs.com/Rick-w/archive/2012/03/05/2381048.html ,它的核心代码在这:setWindowFlags(Qt:... 阅读全文
posted @ 2016-01-18 13:49 夏至千秋 阅读(5392) 评论(0) 推荐(0) 编辑
摘要: QT4 :QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));QT5:#if defined(_MSC_VER) && (_MSC_VER >= 1600)#pragma execution_character_set("utf-... 阅读全文
posted @ 2016-01-18 13:42 夏至千秋 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 问题表现:做网站ASP页面提示:ADODB.Connection 错误 '800a0e7a' 未找到提供程序。该程序可能未正确安装。解决方案:一般都是64位系统的原因,把IIS切换为32Bit模式运行命令:Cscript C:\inetpub\adminscripts\adsutil.vbs SET... 阅读全文
posted @ 2016-01-18 13:36 夏至千秋 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 解决方法:1:新建一个记事本,输入msiexec /i path\SQLServer2005_SSMSEE.msi 然后另存为.cmd格式。2:右单击刚刚创建的那个.CMD文件,选择“以管理员身份运行”,点击以管理员身份运行,安装sql2005其中的 path 要换成SQLServer2005_SS... 阅读全文
posted @ 2016-01-18 12:30 夏至千秋 阅读(562) 评论(0) 推荐(0) 编辑
摘要: 今天做COM组件时,编译之后,出现了一个数个编译错误:error LNK2019: 无法解析的外部符号 "wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *) " (?ConvertStringToBSTR@_com_uti... 阅读全文
posted @ 2016-01-18 12:09 夏至千秋 阅读(477) 评论(0) 推荐(0) 编辑
摘要: 之前做点云的.Net程序,经常因为数据量大出现Outofmemory异常,但是看看任务管理器,内存还有好多剩余的,在网上搜了一下发现这样的解释。不管系统内存多大,目前一个.NET 对象最多只能够使用2G内存。对于2G内存的服务器,.Net只能使用1.2G内存。对于4G内存的服务器,.Net可使用2.... 阅读全文
posted @ 2016-01-15 20:22 夏至千秋 阅读(2931) 评论(0) 推荐(1) 编辑
摘要: Visual Studio在2010版本后推出了点击项目管理器预览文件的功能,但是对于配置不咋地的旧电脑总是觉得有点卡,下面是解决方案。英文版方法:Tools->Options->Environment->Tabs and Windows->Preview Tab->勾掉Single-click o... 阅读全文
posted @ 2016-01-15 20:17 夏至千秋 阅读(1191) 评论(0) 推荐(0) 编辑
摘要: win7安装android sdk老出 Fetching https://dl-ssl.google.com/android/repository/addon 。这是android sdk不能连接到谷歌更新网络。解决方法如下:打开C:\Windows\System32\drivers\etc 目录,... 阅读全文
posted @ 2016-01-15 20:15 夏至千秋 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 可能在不知道为什么的情况下,移动硬盘或者本地磁盘的每个分区变成了RAW格式。其在Win系统下的无损修复过程如下:用“win”+“R”打开“运行”小窗口;键入“CMD”;键入命令“CHKDSK P: /F”,“P:”是在电脑上那个有问题的盘符;接着,这个命令就开始飞快的执行起来了,看到刚开始的一段检测... 阅读全文
posted @ 2016-01-14 17:01 夏至千秋 阅读(1656) 评论(0) 推荐(0) 编辑