PortabledEviceApilib.iportabledEvicePropvarianTcollection AD Метод продолжает бросать не легальную дату Oleaut, даже еслC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 PortabledEviceApilib.iportabledEvicePropvarianTcollection AD Метод продолжает бросать не легальную дату Oleaut, даже есл

Сообщение Anonymous »

Я делаю консольное приложение C#, которое автоматически синхронизирует файлы между устройством Android и настольным компьютером, единственный улов - я могу использовать только WPD API и без внешних пакетов Nuget. Я пытаюсь удалить файл на устройстве Android, но каждый раз, когда я передаю объект Propvariant в элемент коллекции варианта поддержки, он говорит, что мне нужно предоставить дату, даже если я установил указатель для хранения строки. Ниже приведен код реализации, который я сделал < /p>
Console.WriteLine($"File '{fileName}' already exists. Deleting before upload...");

MyPropVariant myPropVar = new MyPropVariant
{
vt = 31, // VT_LPWSTR
pwszVal = Marshal.StringToCoTaskMemUni(objectId)
};

int size = Marshal.SizeOf();
IntPtr ptr = Marshal.AllocHGlobal(size);
Marshal.StructureToPtr(myPropVar, ptr, false);

var comPropVar = Marshal.PtrToStructure
(ptr);

// Now add it
var objectIdsToDelete = (PortableDeviceApiLib.IPortableDevicePropVariantCollection)new PortableDevicePropVariantCollection();

objectIdsToDelete.Add(ref comPropVar);

// Optional: prepare an empty results collection
PortableDeviceApiLib.IPortableDevicePropVariantCollection results = (PortableDeviceApiLib.IPortableDevicePropVariantCollection)new PortableDevicePropVariantCollection();

// Delete the file
content.Delete(PORTABLE_DEVICE_DELETE_NO_RECURSION, objectIdsToDelete, ref results);

Marshal.FreeCoTaskMem(myPropVar.pwszVal);
Marshal.FreeHGlobal(ptr);

Console.WriteLine("Existing file deleted. Proceeding with upload...");
< /code>
Есть ли что -то, чего мне не хватает или делаю неправильно? Или есть лучший способ удалить файл без использования провидцев через MTP?


Подробнее здесь: https://stackoverflow.com/questions/796 ... eps-throwi
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»