冷月宫主的专栏

燕过留声,点滴记录

c#调用c++ dll的几种类型转换

在合作开发时,C#时常需要调用C++DLL,当传递参数时时常遇到问题,尤其是传递和返回字符串是,现总结一下,分享给大家: VC++中主要字符串类型为:LPSTR,LPCSTR, LPCTSTR, string, CString, LPCWSTR, LPWSTR等 但转为C#类型却不完全相同...

2012-02-29 20:58:36

阅读数:521

评论数:0

DllImport路径问题

1、DLL文件必须位于程序当前目录或系统定义的查询路径中(即:系统环境变量中Path所设置的路径)。 2、DLLImport会按照顺序去查找DLL文件(程序当前目录>System32目录>环境变量Path所设置路径)。 3、返回类型变量、方法名称、参数列表一定要与DLL文件中的定...

2012-02-29 20:58:00

阅读数:735

评论数:0

C#与C++数据类型对应表

C#调用DLL文件时参数对应表 Wtypes.h 中的非托管类型 非托管 C 语言类型 托管类名 说明 HANDLE void* System.IntPtr 32 位 BYTE ...

2012-02-29 20:54:26

阅读数:431

评论数:0

C#调用C++的DLL搜集整理的所有数据类型转换方式

本以为这篇搜集整理的代码会是很不错的文章,花了一天时间,搜索到最后居然出来一篇叫做"C# 与 C++ 数据类型对照表"的文章.几乎囊括掉和大部分的数据了,太打击我了. 本文中有部分的数据没有测试.也有一些不错的是看了上百篇网文对比整理得来的.希望有帮助.         //...

2012-02-29 20:53:28

阅读数:644

评论数:0

函数调用,C# 调用Dll中非托管C++代码时,函数参数的类型对照

使用C#调用了很多非托管的C++代码。 现在就把“C# 调用Dll中非托管C++代码时,函数参数的类型对照”这一问题做一个总结。 用这些关键字进行搜索,网上有不少这样那个的内容,比如下面这几个链接 C# 与 C++ 数据类型对照(后三篇内容一样) http://topic.csdn.net...

2012-02-29 20:20:46

阅读数:524

评论数:0

C#程序实现动态调用DLL的研究(转载)

C#程序实现动态调用DLL的研究 摘 要:在《csdn开发高手》2004年第03期中的《化功大法——将DLL嵌入EXE》一文,介绍了如何把一个动态链接库作为一个资源嵌入到可执行文件,在可执行文件运行时,自动从资源中释放出来,通过静态加载延迟实现DLL函数的动态加载,程序退出后实现临时文件的自动删...

2012-02-29 20:20:10

阅读数:504

评论数:0

用VS2008生成C++代码的dll及在C#中的调用及常见的类型转换

新建项目->Visual C++->win32->Win32项目->输入项目名称->next->应用程序类型选dll,附加选项选上“导出符号”,添加公共头文件视情况可以加上MFC->完成。   此时生成的项目有示例代码,可以在原来的代码上修改。 ...

2012-02-29 20:18:33

阅读数:528

评论数:0

使用public/private key让putty(ssh)自动登录(以及linux上使用密钥做ssh自动登陆)

方法一:使用puttygen.exe 第一步:生成密匙 运行puttygen.exe,选择需要的密匙类型和长度,使用默认的SSH2(RSA),长度设置为1024就可以了。 passphrase可以为空,免得登录时还是要输入一次密码。 点击Save private key 按钮保存公...

2012-02-29 18:09:53

阅读数:1105

评论数:0

Putty之public key ssh认证入门

cAreLeSs作品: 1.工作平台 客户端:Win2kEn Sp3,Putty Beta 0.53 服务器:RedHat72,OpenSSH_3.4p1 2.Putty简介 一个免费小巧的Win32平台下的ssh客户端。它的主程序只有348k, 但是功能丝毫不逊色于商业的...

2012-02-29 18:09:03

阅读数:1505

评论数:0

JS类库Bindows1.3中的内存释放方式分析

我在前段时间介绍过IE中JavaScript脚本Memory Leak的问题,后来在几位热心网友的讨论下,基本认可了内存泄露的事实和原理。在小规模的测试case下,本来都达到了基本避免IE中脚本的ML问题。可是近来发现只以"仔细"来防止IE中脚本ML似乎是非常困难的一件事情...

2012-02-29 17:35:53

阅读数:564

评论数:0

System.Diagnostics.Process.Start的妙用

我们经常会遇到在Winform或是WPF中点击链接或按钮打开某个指定的网址, 或者是需要打开电脑中某个指定的硬盘分区及文件夹, 甚至是"控制面板"相关的东西, 那么如何做呢? 答案是使用System.Diagnostics.Process.Start()。它的作用是调用外部的...

2012-02-29 17:31:24

阅读数:704

评论数:0

net中System.Diagnostics.Process.Start用法

System.Diagnostics.Process.Start();这个方法用来创建一个新的进程 比如说你在某个程序的菜单上想加个超链接到百度知道 那么就可以用这个方法来实现 System.Diagnostics.Process.Start("iexplore.exe",&q...

2012-02-29 17:30:21

阅读数:950

评论数:0

基于ExtJS 3.1内存回收改进

使用了ExtJS 3.1并且更改了模块加载方式之后,我的OPOA内存回收有所改进,记录一下概要: 1、不用autoload{url:url, scripts:true}的方式,而使用eval(response.responseText)方式,这样可以减少一些Orphan Node,使用autol...

2012-02-29 16:27:09

阅读数:771

评论数:0

IE内存泄露与无法回收研究小结

一、内存泄露    之前确实看了很多资料,但这位大哥的话可谓画龙点睛,不是奉承他,一下子就打通了我的任督二脉,请看: trarck 写道    IE下的内存泄露原因就是循环引用,IE的垃圾回收器不能很好处理这种引用。 会产生泄露的循环引用,只有孤立的DOM对象(脱离DOM树)。 ...

2012-02-29 16:06:07

阅读数:453

评论数:0

Javascript IE 内存释放

一个内存释放的实例 strTest = "1"; for ( var i = 0; i { strTest += strTest; } alert(strTest); delete strTest; CollectGarbage(); //-->...

2012-02-29 15:58:18

阅读数:602

评论数:0

心得:Javascript的内存释放实验

我以前也看过关于javascript的内存释放的文章,但我从来也没仔细看过。原因:一来我觉得这个东西可有可无,二来,鬼知道这些理论到底有没有科学根据? 今天我做了一个小小的实验,证实内存释放还是有用的。 比如有如下程序: var   a   =   new   Array();...

2012-02-29 15:54:40

阅读数:617

评论数:0

关于IE下的内存回收研究.

有很多人提到IE下使用AJAX内存会增长很快. 我稍微研究了一下   发现其实IE的并不会主动的对未引用的变量进行回收 CollectGarbage()只是对值为null的变量进行回收,其实就算不用CollectGarbage()在下次分配内存的时候IE也会对null的内存进行重新分配...

2012-02-29 15:54:11

阅读数:397

评论数:0

JS 触发事件整理

一般事件 onclick IE3、N2鼠标点击时触发此事件 ondblclick IE4、N4鼠标双击时触发此事件 onmousedown IE4、N4按下鼠标时触发此事件 onmouseup IE4、N4鼠标按下后松开鼠标时触发此事件 onmouseover IE3、...

2012-02-29 12:14:59

阅读数:435

评论数:0

页面关闭触发事件

function f() {     if (event.clientX > document.body.clientWidth && event.clientY         alert("1");     } } window.onbef...

2012-02-29 12:12:52

阅读数:563

评论数:0

关闭窗口时触发事件(屏蔽刷新时触发)

要在关闭窗口时触发一个事件,我们会想到window对象提供了两个事件:onUnload和onBerforUnload,因为它们是针对document的,当document被卸载或被卸载前触发。但这两个事件在刷新时也会触发,所以我们要采用什么方法来屏蔽除了关闭窗口操作以外而触发的onUnload和o...

2012-02-29 12:12:12

阅读数:738

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭