Это работает, хотя это может быть не самым чистым способом:
using System;
using System.Runtime.InteropServices;
using System.Text;
public class Test
{
[DllImport("shlwapi.dll")]
static extern void StrFormatByteSize64(ulong qdw, StringBuilder builder,
uint cchBuf);
static void Main()
{
ulong size = 2000;
StringBuilder builder = new StringBuilder(128);
StrFormatByteSize64(size, builder, builder.Capacity);
Console.WriteLine(builder);
}
}
Боюсь, я не знаю много о взаимодействии - возможно, вам не нужно указывать начальныйемкость StringBuilder
, например.Я не уверен :( В любом случае, он должен предоставить вам отправную точку для дальнейшего расследования.