标题:C# 调用自定义dll
只看楼主
weihuixian
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-1-5
结帖率:100%
已结贴  问题点数:20 回复次数:4 
C# 调用自定义dll
对于c# ,有些功能是无法实现的。例如产生不可删除的目录(起到一定意义上的数据安全),在它的里边保存文件、操作文件。这是就可以使用c++ 语言,完成产生、删除,在里边操作文件等功能,最后将其封装成dll供c#调用。
生成dll 与一般的dll 没有不同,使用与使用系统函数一样!
搜索更多相关主题的帖子: 数据安全 
2012-01-12 15:13
weihuixian
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-1-5
得分:0 
当然使用时,目录名要注意,否则无法访问!例如产生Data..目录,访问时目录名要写成Data~1 !!!!
2012-01-12 15:16
sterling
Rank: 2
等 级:论坛游民
帖 子:10
专家分:20
注 册:2012-1-12
得分:14 
C# 调用C++ dll 可以通过调用托管C++
2012-01-12 16:48
weihuixian
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-1-5
得分:0 
比如使用c++builder 实现产生目录(data..)的函数,利用dll实现(比如是Project12009.dll)
一、.cpp 实现:
BOOL  __stdcall CreateDir_dll(char *s)//产生目录
{// char *ss =new char [100];
  bool ret= _mkdir(s); return (!ret); //成功返回 0,故取反

}
二、
.h头的函数:
extern "C" __declspec(dllexport) BOOL  __stdcall CreateDir_dll(char *s);
三、c# 调用
1  [DllImport("Project12009.dll")]
        public static extern bool CreateDir_dll(string s);//创建目录
2 使用:产生不能删除的data..目录!
           string s1 = Application.StartupPath +  "\\data..\\";
           if (CreateDir_dll(s)) MessageBox.Show("create dir data..");
         
2012-01-13 09:07
weihuixian
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-1-5
得分:0 
程序访问时目录要写成data~1,切记
2012-01-13 10:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-359569-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050298 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved