mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-12 18:27:23 +01:00
Support Unicode names correctly.
This commit is contained in:
parent
1ab198af8b
commit
f7c2ab5283
2 changed files with 4 additions and 4 deletions
|
|
@ -101,7 +101,7 @@ internal partial class DragDropManager
|
|||
public static extern int RevokeDragDrop(nint hwnd);
|
||||
|
||||
[DllImport("shell32.dll")]
|
||||
public static extern int DragQueryFile(IntPtr hDrop, uint iFile, StringBuilder lpszFile, int cch);
|
||||
public static extern int DragQueryFileW(IntPtr hDrop, uint iFile, [MarshalAs(UnmanagedType.LPWStr)] StringBuilder lpszFile, int cch);
|
||||
}
|
||||
}
|
||||
#pragma warning restore SA1600 // Elements should be documented
|
||||
|
|
|
|||
|
|
@ -204,7 +204,7 @@ internal partial class DragDropManager : DragDropManager.IDropTarget
|
|||
try
|
||||
{
|
||||
data.GetData(ref this.formatEtc, out var stgMedium);
|
||||
var numFiles = DragDropInterop.DragQueryFile(stgMedium.unionmember, uint.MaxValue, new StringBuilder(), 0);
|
||||
var numFiles = DragDropInterop.DragQueryFileW(stgMedium.unionmember, uint.MaxValue, new StringBuilder(), 0);
|
||||
var files = new string[numFiles];
|
||||
var sb = new StringBuilder(1024);
|
||||
var directoryCount = 0;
|
||||
|
|
@ -212,11 +212,11 @@ internal partial class DragDropManager : DragDropManager.IDropTarget
|
|||
for (var i = 0u; i < numFiles; ++i)
|
||||
{
|
||||
sb.Clear();
|
||||
var ret = DragDropInterop.DragQueryFile(stgMedium.unionmember, i, sb, sb.Capacity);
|
||||
var ret = DragDropInterop.DragQueryFileW(stgMedium.unionmember, i, sb, sb.Capacity);
|
||||
if (ret >= sb.Capacity)
|
||||
{
|
||||
sb.Capacity = ret + 1;
|
||||
ret = DragDropInterop.DragQueryFile(stgMedium.unionmember, i, sb, sb.Capacity);
|
||||
ret = DragDropInterop.DragQueryFileW(stgMedium.unionmember, i, sb, sb.Capacity);
|
||||
}
|
||||
|
||||
if (ret > 0 && ret < sb.Capacity)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue