Я использую транзакционную NTFS для чтения и записи в файлы в файловой системе, и я заметил, что приложение сталкивается с периодическими ошибками, которые разрешаются только при перезапуске приложения.Трассировка стека для ошибки:
System.Runtime.InteropServices.COMException (0xD0190052): Exception from HRESULT: 0xD0190052
at ...KtmTransactionHandle.IKernelTransaction.GetHandle(IntPtr& handle)
at ...KtmTransactionHandle.CreateKtmTransactionHandle(Transaction managedTransaction)
at ...KtmTransactionHandle.CreateKtmTransactionHandle()
at ...TransactedFile.Open(String path, FileMode mode, FileAccess access, FileShare share)
at ...TransactedFile.ReadAllText(String path)
IKernelTransaction - интерфейс COM, к которому я обращаюсь:
[ComImport]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
[Guid("79427A2B-F895-40e0-BE79-B57DC82ED231")]
private interface IKernelTransaction
{
void GetHandle([Out] out IntPtr handle);
}
здесь
IKernelTransaction tx = (IKernelTransaction)TransactionInterop.GetDtcTransaction(Transaction.Current);
Мой кодочень похож на http://msdn.microsoft.com/en-us/library/cc303707.aspx
Проблема в том, что я не могу найти информацию об этой ошибке COM 0xD0190052.Просто знать, что это за код ошибки, было бы очень полезно.
Спасибо