0

プログラムで XML ファイルを開いている間、書き込みアクセスのために XML ファイルをロックしようとしています。私のプログラムはXmlDataProvider. 両方を達成する方法が見つかりません:

Partial Class MainWindow

  'XmlData As XmlDataProvider - Declared in MainWindow.xaml
  Private m_FileName As String = Nothing
  Private m_FileNumber As Integer


  Public Sub OpenFile(fileName As String)
    If m_FileName IsNot Nothing Then CloseFile()

    m_FileName = fileName
    m_FileNumber = FreeFile
    FileOpen(m_FileNumber, m_FileName, OpenMode.Binary, OpenAccess.Default, OpenShare.LockWrite)
    XmlData.Source = New Uri(m_FileName)
    ' IOException: The process cannot access the file "C:\path\filename.xml" because it is already in use by a different process.
    ' I translated the error message, I hope you know which one I mean.
  End Sub

  Public Sub CloseFile()
    If m_FileName Is Nothing Then Exit Sub

    XmlData.Source = Nothing
    FileClose(m_FileNumber)
    m_FileName = Nothing
  End Sub
End Class

XmlDataProviderまた、ファイルをロックするように指示する方法も見つかりません。私に何ができる?

4

0 に答える 0