2016-04-26 99 views
0

你可以看到我正在將水晶報告導出到PDF文件 但我的問題是水晶報告RPT文件的路徑和保存oupt文件(PDF文件)的路徑,因爲桌面上文件夾的路徑是像如何將文件保存在桌面上的文件夾中,不管路徑是什麼?

PC1路徑代碼的PC之間的變化是

C:\Users\Xuser\Desktop 

和DEF租電腦是

C:\Users\XYPC\Desktop 

這樣的路徑是不是一個靜態的路徑..反正出路?

更新:

現在下面的代碼獲取路徑到桌面,但我得到有關的訪問權限的例外是訪問路徑被拒絕

private void ExportToPDF() 
    { 

     ReportDocument cryrpt = new ReportDocument(); 

     try 
     { 
      cryrpt.Load("INVOICE_REP.rpt"); 

      ExportOptions CrExportOptions; 
      DiskFileDestinationOptions CrDiskFileDestinationOptions = new DiskFileDestinationOptions(); 
      PdfRtfWordFormatOptions CrFormatTypeOptions = new PdfRtfWordFormatOptions(); 
      CrDiskFileDestinationOptions.DiskFileName = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory); 
      MessageBox.Show(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)); 
      CrExportOptions = cryrpt.ExportOptions; 
      { 
       CrExportOptions.ExportDestinationType = ExportDestinationType.DiskFile; 
       CrExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat; 
       CrExportOptions.DestinationOptions = CrDiskFileDestinationOptions; 
       CrExportOptions.FormatOptions = CrFormatTypeOptions; 
      } 
      cryrpt.Export(); 

      MessageBox.Show("Export Done"); 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.ToString()); 
     } 
    } 
+0

System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop) – LaneL

回答

1

您可以使用環境類。

Environment.GetFolderPath(Environment.SpecialFolder.Desktop); 
1

使用Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)獲取桌面路徑。

David Fulop建議使用Environment.GetFolderPath(Environment.SpecialFolder.Desktop)DesktopDirectoryDesktop有什麼區別?

根據MSDN:

  • Desktop是 「邏輯桌面,而不是物理文件系統位置。」
  • DesktopDirectory是「用於在桌面上物理存儲文件對象的目錄」。

來源爲上述所有:https://msdn.microsoft.com/en-us/library/system.environment.specialfolder%28v=vs.110%29.aspx

+0

這是偉大的,但現在我得到了訪問權限的錯誤消息是訪問路徑被拒絕 – samer

+0

你能編輯你的問題來包含產生錯誤的代碼嗎? –

+0

我已更新我的代碼 – samer

相關問題