0
我有一些東西寫入C++中的carchive中,以便在C#中讀取。下面是C++代碼如何在C中讀取CArchive布爾值#
CString str= "string value";
BOOL firstBool=false;
BOOL secondBool= True;
Bool thirdBool= true;
CMemFile file(DataBlob->GetData(), dLength);
CArchive ar(&file, CArchive::load);
ar << str<<firstBool<<secondBool<<thirdBool;
下面是如何在讀C#
var br = new BinaryReader(new MemoryStream(file));
var strCSharp= br.ReadString();
var firstBoolCSharp= br.readBoolean();
var secondBoolCSharp= br.readBoolean();
var thirdBoolCSharp= br.readBoolean();
問題:我不能先讀,在c#第二和第三布爾值。可能是什麼問題?
不是一個直接的答案,但我會寫一個快速的C++/CLI DLL來使用MFC來讀取CArchive並交給.Net類。 – crashmstr
我不知道CLI是否可以指點我其他方向 – WPFKK
要繼續使用@crashmstr方式:即使沒有考慮CLI,也可以編寫一個C++ dll,它將公開用於讀取文件的方法,然後您將擁有將DLL的函數導入到C#代碼中,並完成:DllImport doc:https://msdn.microsoft.com/en-us/library/aa984739(v=vs.71).aspx – Sidewinder94