2012-10-23 106 views
-1

我正在創建一個應用程序(最好是C++),它允許我編譯一個可執行文件,並在源代碼中進行小的修改(這些選項將在控制檯窗口中呈現給用戶),例如字符串數據修改。一個例子是我運行應用程序A,它提示我輸入一個字符串值,然後輸入Y,然後應用程序B創建一個字符串值,該值將被修改爲Y.C++可執行文件生成器

這是我需要的原因通過無需配置文件等便可輕鬆分發的構建器生成文件。

我只是想知道,我該怎麼做?

+0

你能確保用戶系統上有C++編譯器嗎?也許你可以解釋更高層次的問題,而不是你認爲需要用來解決問題的底層方法。 – DavidO

+0

您是否要求使用C++代碼的字符串(或多個)?我在數據分析中看到過這種情況,當您有多個變量時,我對比率或其他派生數量感興趣。 – Shep

回答

1

通常,你不需要這樣的應用程序。使用配置文件,數據文件或其他任何東西來確保您的實際程序可以在不重新編譯的情況下進行調整,但需要更改其輸入數據。

例如:應用程序A提示輸入字符串值,輸入Y,它將Y保存到配置文件中,然後啓動應用程序B,它從配置文件中讀取Y.

當你真的想要做你描述的事情時,我能想象的唯一情況是當用戶提供需要執行的源代碼/機器代碼。但是再一次,這就是爲什麼我們嵌入了腳本語言和插件概念。

+0

感謝您的輸入,但是我需要分發沒有任何配置文件等的輸出文件。 – Ryan

+0

@ user1661022然後在第一次運行後創建配置文件。但我同意DavidO解釋你想要達到的目標,我們可能會以不同的方式來幫助你。我只能想到一個或兩個這樣做的原因,其中一個是不合法的。 – 2012-10-23 09:52:56

+0

1. Windows可執行文件具有「資源部分」。它的格式是有據可查的,您可以更快地製作定製資源編輯器,專門爲您的應用量身定製; 2. WinRAR的自解壓檔案可以配置爲自動啓動其中一個解壓縮文件。因此,您的應用程序可能會將其自身解包到臨時文件夾中,並在退出時自行刪除。 3.你可以將gcc和perl/python合併成一個恐怖的大模糊球,這會混淆源代碼並重新編譯它。分銷問題隨之而來。 –

0

您可以創建一個「僞」配置文件:創建將保存到配置文件的所有數據,然後將該數據附加到可執行文件。當創建的程序運行時,它可以從正在執行的文件中讀取數據。

相關問題