2014-03-29 67 views
3

我需要在Windows 8.1 x64中使用Delphi 6 Update 2(如果你想知道,這是關於維護一箇舊的應用程序,遷移到一個新版本不是一個選項,我不能使用虛擬機,因爲我使用同一臺機器連接到某些不適用於虛擬機的外圍設備)。在Windows 8.1 x64上的Delphi 6 Update 2安裝解決方法?

問題是更新2有一個16位存根的32位安裝程序。所以目前的行爲是安裝程序啓動,它提取臨時位置的文件,開始安裝,然後屏幕上沒有任何內容出現。

到目前爲止,我認爲這是不可能的。但是我見過的SQL Server 2000相同的行爲(不要問),但我可以使用msetup.exe(DemoShield)打開一個啓動腳本的sqlservr.dbd。但是,沒有這樣的dbd文件。我想我在SQLServer 2000上運氣很好。 到目前爲止,我已經嘗試了兼容模式DosBox,用Installshield 3和5替換安裝文件,等待幾小時安裝程序啓動(有時W8會這樣做),甚至比較更新2之前和之後的XP機器上的文件和註冊表,但這對於應用於真機上可能有點太冒險。

+4

爲什麼不將Delphi安裝到VM中,然後在與外設交互時在主機上運行編譯的應用程序?如果您需要調試應用程序,則可以跨越VM邊界使用Delphi的遠程調試器。 –

+0

給我發電子郵件[email protected],我可能會爲你弄點東西。無論是如何從16位包裝中提取32位或使用現代安裝程序將其重新打包爲獨立修補程序。 –

+1

我認爲這可以在x64中正常工作,就像它一直這樣做。系統提供一個compat shim來代替16位存根。我從來沒有遇到任何問題。 –

回答

2

由於Windows 8.1 86包含的Hyper-V的虛擬機上運行,​​最現代化的硬件支持Hyper-V和Windows 8 x86 can still run 16-bit based apps

主機的物理機下安裝Windows 8.1 x86的虛擬機,然後安裝它。

升級:很容易將您的虛擬機移動到新的主機而無需重新安裝全新的虛擬機。

請參閱http://www.techrepublic.com/blog/windows-and-office/get-started-with-windows-8-client-hyper-v-the-right-way/7893/http://www.infoworld.com/d/virtualization/5-excellent-uses-of-windows-8-hyper-v-208436以開始使用Hyper-V。

如今,Hyper-V可以將相當多的硬件從主機重定向到虛擬機。對於「老」硬件,如COM和LPT端口,您經常可以購買可重定向的USB適配器。

如果在x86上安裝Windows 8.1工作和x64失敗,我認爲你已經證明安裝程序的16位部分是罪魁禍首的假設。

+0

直接在Win 8上安裝D6會不會更容易? –

+0

@DavidHeffernan定義簡單...當我最近啓動SSD崩潰時,我真的很高興我所有的工作都在虛擬機中。獲得了一個替代SSD,安裝了一個新的(也是最近的)Windows主機,恢復了所有的虛擬機,並恢復了業務。花了一些時間,但比從頭開始安裝所有東西要少得多。 –

+0

在虛擬機中工作很尷尬。我從來沒有遇到任何麻煩在64位安裝D6。它只是安裝。 –

1

也許去年我的博客文章可以解決你的問題:

http://blog.dummzeuch.de/2013/11/11/delphi-6-on-windows-8-1/

摘錄:

我只是刪除註冊表項

HKCU \ SOFTWARE \ Borland的\德爾福\ 6.0 \ LM

(我沒做備份,會有什麼意思?)

我開始使用Delphi 6,忽略了關於不兼容性的警告(無論如何都在討論Delphi 7),並再次進行了註冊/激活過程。這一次它工作。

也許我應該提一下,我沒有將任何我的Delphi版本安裝到c:\ program files,而是將它們放到c:\ Delphi中,以避免任何有關安裝目錄訪問權限的問題。

+0

Windows 8.1 x64?如果是這樣,然後更新你的帖子(: –

+1

是的,這是。對不起,我傾向於忘記,仍然有一個32位版本。 – dummzeuch

+0

@Dummzeuch:謝謝你的意見。我不知道我們是一樣的安裝/運行基礎D6就像一個魅力一樣,當我嘗試更新到upd2(並且我想更新到upd2,因爲我必須安裝一些組件並編譯與另一個同步的W7機器的兼容性),安裝存根無法啓動,或者它開始,但是我的顯示屏上沒有顯示任何屏幕,我會嘗試你的建議,謝謝 – cleantone

相關問題