저는 트랜잭션 NTFS를 사용하여 파일 시스템의 파일을 읽고 쓰는데, 응용 프로그램이 다시 시작될 때만 해결되는 간헐적 인 오류가 발생하는 것으로 나타났습니다. 오류에 대한 스택 추적 :TxNTFS를 사용하는 이상한 간헐적 인 오류
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 ation. 이 오류 코드가 무엇인지 아는 것은 엄청난 도움이됩니다.
감사
해당 HRESULT 코드로 FormatMessage (P/Invoke 또는 기본)를 시도 했습니까? – Yahia
불행히도,이 코드는 자연 상태이며 테스트 머신에서는 본 적이 없습니다. 0xD0190052는 int를 오버플로하므로 Marshal.ThrowExceptionForHR 및 new Win32Exception에 -1173667886을 전달했습니다. 두 경우 모두 알 수없는 오류가 발생했습니다. – Phill
[AlphaFS] (http://alphafs.codeplex.com/) 옵션을 사용하고 있습니까? – shambulator