2016-04-26 1 views
0

私はクリスタルレポートをPDFファイル にエクスポートしていますが、私の問題は、デスクトップのフォルダへのパスがあるので、CrystalレポートRPTファイルのパスとouptファイル(PDFファイル)を保存するパスですPC1パスコードがデスクトップ上のフォルダにファイルを保存する方法は何ですか?

C:\Users\Xuser\Desktop 

こと

のようなPCの間で変更し、デフ上のPCを借り

C:\Users\XYPC\Desktop 

ので、パスはとにかく道アウト..静的なパスではありませんか?

更新:今、コードの下

は、デスクトップへのパスを取得するが、私はあなたがEnvironmentクラスを使用することができますパスへのアクセスであるアクセス許可についての例外が

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素晴らしいことだが、今、私はパスへのアクセスが – 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

を拒否されているアクセス権に関するエラーメッセージが表示されました(Environment.SpecialFolder.Desktop) –

+0

私のコードを更新しました – samer

関連する問題