電話ドライブのサイズを取得したい。「Nokia-PC-Connectivity」を使用しています。ファイル システム API に関しては、CONA_Folder_Info という名前の CONADifinition 関数で見つけましたが、この関数は FreeSize と Total Size をサポートしていませんが、CONA_Folder.Info2 とそのインスタンスがこれらの変数をサポートしています。 .
しかし、次のように CONA_Folder.Info2 を使用した場合:
CONADefinitions.CONAPI_FOLDER_INFO2 FolderInfo;
int iResult = 0;// Allocate memory for buffer
IntPtr Buffer = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(CONADefinitions.CONAPI_FOLDER_INFO2)));
iResult = CONAFileSystem.CONAFindNextFolder(hFindHandle, Buffer);
while (iResult == PCCSErrors.CONA_OK )
{
FolderInfo = (CONADefinitions.CONAPI_FOLDER_INFO2)Marshal.PtrToStructure(Buffer, typeof(CONADefinitions.CONAPI_FOLDER_INFO2));
if (FolderInfo.pstrName[0].ToString() != "C" && level == 0)
{
}
私はこの例外を受け取ります:
FatalExecutionEngineError が検出されました メッセージ: ランタイムで致命的なエラーが発生しました。エラーのアドレスは、スレッド 0x1278 の 0x7a0ba769 でした。エラー コードは 0xc0000005 です。このエラーは、CLR のバグ、またはユーザー コードの安全でない部分または検証不可能な部分のバグである可能性があります。このバグの一般的な原因には、COM 相互運用機能または PInvoke のユーザー マーシャリング エラーが含まれ、スタックが破損する可能性があります。
注: S60 ソフトウェア プラットフォームを使用しています。アプリケーション言語は C# です。
詳細については、私に尋ねてください。