public void Delete(string path) { LongPath longPath = new LongPath(path); bool result; if (KtmTransaction.IsInTransaction) { result = WindowsNative.RemoveDirectoryTransacted(longPath.PathString, KtmTransaction.Current.Hanlde); } else { result = WindowsNative.RemoveDirectory(longPath.PathString); } if (!result) { WindowsNative.HandleWindowsError(); } }