-
C#中dllimport用法
dllimport是System.Runtime.InteropServices命名空间下的一个属性类,其功能是提供从非托管DLL导出的函数的必要调用信息。
dllimport属性应用于方法,要求最少要提供包含入口点的dll的名称。
dllimport的定义如下:
[AttributeUsage(AttributeTargets.Method)]
public class DllImportAttribute: System.Attribute
{
public DllImportAttribute(string dllName) {…} //定位参数为dllName
public CallingConvention CallingConvention; //入口点调用约定
public CharSet CharSet; //入口点采用的字符接
public string EntryPoint; //入口点名称
public bool ExactSpelling; //是否必须与指示的入口点拼写完全一致,默认false
public bool PreserveSig; //方法的签名是被保留还是被转换
public bool SetLastError; //FindLastError方法的返回值保存在这里
public string Value { get {…} }
}
用法示例:
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section,string key,string val,string filePath);
以上是用来写入ini文件的一个win32api。
用此方式调用Win32API的数据类型对应:DWORD=int或uint,BOOL=bool,预定义常量=enum,结构=struct。您来到小站很多次了哦,喜欢的话,不妨订阅我吧·!
相关文章:
- C#和C++混合编程的一些tips 最近帮朋友写个小东西的时候,刚好用到了C#和C++的混合编程,记录一些tips供日后参考。 首先说明下环境:C#调用C++的库函数,C++建立一个非托管类库项目,C#项目引用之。...
- PostGreSQL之MVCC代码分析(1):概览 Transaction启动时形成快照就是要记录该Transaction可见的TransactionID,排除不可见的ID。PostGreSQL中每一个版本的数据有两个ID,其中一个是CreationID即插入该数据的TransactionID,一个是ExpiredID,即删除或更新该数据的TransactionID。对一个Transaction可见的数据的ID要满足以下条件: 1.CreationID当前TransactionID或ExpiredID不存在 Transaction启动形成快照的过程: 遍历当前所有活动的Transaction,记录在一个活动Transaction的ID数组中;根据Transaction的先后顺序,选择当前Transaction可见的最小TransactionID,记录在xmin,选择可见的最大TransactionID,记录在xmax中。 PostGreSQL8.5中进行最终的版本选择是在从外存中获取一个页面的数据之后,由一个检验函数(HeapTupleSatisfiesMVCC等一系列函数)检验所有该页面数据的数据对当前Transaction的可见性,如果不可见,则将数据除去,最后返回所有可见数据。...
- 几种用户相似度计算方法及其优缺点 注:我毕设要做一个垂直搜索引擎中的用户推荐项目,这些是我摘录的一些资料和相关分析。 进行用户协同过滤时,一个关键问题是如何计算用户之间的相似性。比较常见的计算用户相似度的算法有余弦相似性、皮尔森系数、调整余弦相似性三种。 这三种相似性都是基于一个称为用户-项目矩阵的数据结构来进行计算的。该数据结构如下: 余弦相似性:把用户评分看作是n维项目空间上的向量,通过计算两个向量之间的夹角余弦来度量两个用户之间的相似性。 皮尔森系数:又称相关相似性,通过Peason相关系数来度量两个用户的相似性。计算时,首先找到两个用户共同评分过的项目集,然后计算这两个向量的相关系数。 调整余弦相似性:将余弦相似性中的向量,减去用户平均评分向量后,再计算夹角余弦以修正不同用户评分尺度不同的问题。 在数据比较稀疏的情况下,这几种方法均存在一定问题:余弦相似性和调整余弦相似性对于用户未评价项目评分为0的假设;皮尔森系数中用户共同评分项目集可能很小。 在垂直搜索引擎中,用户数据具有相当的稀疏性。所以需要通过一定的手段来消除这种稀疏性。我的思路: 1.垂直搜索中存在一个项目的目录(树形结构),如果自顶向下进行评分,并将子项目分数与父项目分数按一定规则运算后作为最后评分。从而填充稀疏矩阵为密集矩阵。 ...
- I/O五分钟法则 在 1987 年,Jim Gray 与 Gianfranco Putzolu 发表了这个"五分钟法则"的观点,简而言之,如果一条记录频繁被访问,就应该放到内存里,否则的话就应该待在硬盘上按需要再访问。这个临界点就是五分钟。...
- [转载]谷歌网站优化工具介绍 作为设计师和开发者,我们每天都会做很多的设计决定。画草图,研究鼠标点击热图,在屏幕上高谈阔论设计,试图把自己想象成用户,并且拿各种复杂的东西去问大学同学和朋友他们的想法和设想: *我应该在主导航用什么样的关键词呢? *我怎么样安排我的设计才能让用户不会立刻呢? *我的广告放到哪里最有效果? *我的搜索框能被用户很方便的找到吗? 总之,我们都在尽可能的比较各种可能性的权重,并选择最好的组合在网站上实现。 但是你能证明这就一定是最好的方案吗?有了google官方的工具(一般叫做网站优化工具),也许现在你可以证明了。 ...
乘凉说话

滔滔不绝