作者srxrrr (干!我是肌董)
看板C_Sharp
标题[问题] 获得MFC dll里的CString资讯
时间Wed Jul 8 13:51:24 2015
各位先进好!!
基本C#读取MFC(C++)的dll功能已大致了解
但现在碰到了
CString的问题...
我利用MFC所编译的dll档:
_EXTERN_C_ CString testCString()
{
CString str = _T("Show CString");
return str;
}
希望能够过C#来获得CString内容
由於网路上说CString并不是C#里有定义的型态
所以必须透过一些方式来读取其内容
我照着在StackOverFlow上此篇的方式 h ttp://ppt.cc/AmZ2Y
透过
System.Text.StringBuilder来进行编写
在类别(SdkFunction)内导入dll档的内容:
[DllImport("MFCLibrary.dll", CharSet = CharSet.Auto, CallingConvention =
CallingConvention.Cdecl)]
public extern static System.Text.StringBuilder testCString();
在主程式呼叫的内容:
System.Text.StringBuilder testCString; //定义变数
testCString =
SdkFunction.testCString(); //将SDK的内容读入
Console.WriteLine("testCString: " + testCString.ToString());
Console.ReadLine();
结果还是无法成功 程式会自行结束T_T
希望各位热心的版友能提供一点意见!
谢谢您!!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 211.72.212.97
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1436334686.A.C1B.html
※ 编辑: srxrrr (211.72.212.97), 07/08/2015 13:52:57
※ 编辑: srxrrr (211.72.212.97), 07/08/2015 14:14:25
1F:→ feeya: 简单一点编一个C++的dll呼叫MFC 再用C#呼叫 07/10 10:30
感谢f大的回覆! 不好意思再请问一下 您说的这个方式
有没有什麽关键字 或文章可参考@@? 谢谢!!
※ 编辑: srxrrr (123.193.54.226), 07/10/2015 18:58:38