2011-07-01 46 views
0

我支持傳統的MFC C++應用程序(VS2005),我想調用一些SSRS報告(MS Reporting Services)。我希望能夠使用MS Report Viewer控件,但它只適用於.Net。我提出了一些想法,但我一直認爲我正在反對一些常規知識。我希望得到第二個意見。使用MS ReportViewer與MFC

我們已經有一個報告服務器設置(遠程服務器處理)。直接從這個MFC應用程序調用報告(例如,爲客戶顯示摘要報告等)真的很不錯。目前,我們目前只是直接在URL中調用Internet Explorer中的參數。它很簡單,它的工作原理,但它是相當有限的。例如,我無法設置打印機選項。

我會提到我們的項目沒有使用/ clr選項進行編譯 - 我們使用一些第三方庫,在這些和其他人之間,我們得到了太多的鏈接錯誤。試圖讓它與這個項目合作是不可行的。

我想出了一個創建一個包裝ReportViewer的簡單c#應用程序,並通過幾個命令行選項(服務器,報告名稱)控制它的想法。然而,這對參數沒有太大幫助 - 我不得不想出一些發送參數的方式,然後我們的包裝程序將不得不解析出來,等等。

我也想過創建DLL並從MFC調用它,但是我一直認爲我會再次遇到與參數相同的問題。

如果有報告查看器的MFC版本,那將是非常好的,但是我在網上做的任何搜索都沒有任何結果。我花了一段時間才弄清楚我需要從我的示例c#程序中進行正確的調用。有沒有人有什麼建議?

+0

您可以使用瀏覽器控件,然後在URL報告通過? –

+0

凱特 - 感謝發佈!瀏覽器控件與直接調用IE不是一回事嗎? –

回答

0

我決定直接致電Internet Explorer。如果有人想知道如何直接調用IE,只需將其從註冊表中讀取到一個字符串中,並將「/iexplore.exe」添加到最後。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE 

在該位置,讀取字符串「路徑」