2012-12-15 94 views
4

我正在寫我的第一個WPF應用程序,當我試圖將我的序列化文件保存到PC上的任何路徑時,我得到一個UnauthorizedAccessException(意味着訪問路徑被拒絕)。WPF桌面應用程序讀取/寫入文件權限?

這裏的功能:

Public Shared Sub Serialize(Of T)(ByVal compression As Boolean, _ 
    ByVal path As String, ByVal instance As T) 

    Try 
     Dim fs As Stream = New FileStream(path, FileMode.OpenOrCreate) 
     Dim bf As New BinaryFormatter 
     If compression Then fs = New GZipStream(fs, CompressionMode.Compress) 

     bf.Serialize(fs, instance) 
     fs.Close() 
    Catch ex As Exception 
     MessageBox.Show(ex.Message) 
    End Try 
End Sub 

我知道,某些系統文件夾是關閉的限制,但它不會讓我保存在任何地方,無論哪個驅動我選擇。

回答

0

如果您嘗試在系統文件或任何其他您沒有權限的區域編寫代碼,則需要修改項目中的appmanifest.xml。

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> 
    <security> 
    <requestedPrivileges> 
     <requestedExecutionLevel 
     level="requireAdministrator" 
     /> 
     </requestedPrivileges> 
     </security> 
    </trustInfo> 

有2個以上的執行層面,他們是

一)highestAvailable
B)asInvoker

相關問題