2011-07-26 54 views
1

我有一個使用Halcyon dbf組件的Delphi 7應用程序。它在Windows ME中運行良好。 不幸的是,在綁定到Halcyon的Windows XP數據感知控件中,xBase引擎的行爲不正確。另外pack命令幾乎掛起了應用程序。我試着在XP中編譯。但沒有喜樂。這是否意味着API調用的工作方式不同?可能是數據類型意味着不同的事情....Windows版本之間的應用程序可移植性

感謝所有幫助

+2

在不同版本的Windows中編譯沒有任何區別。您正在運行相同的編譯器,因此它會發出相同的可執行文件。 –

+2

這個問題太模糊了。控件的行爲不正確?另外,當您向他們提出問題時,組件供應商會說些什麼? –

+0

什麼是翡翠? –

回答

1

一個寫得很好的Delphi 7應用程序在任何版本的Windows將工作從98日起實施。如果你設法創建了一個在XP上不起作用的應用程序,那麼你應該在XP上調試這個問題,而不是重新編譯然後放棄。 (沒有快樂!?什麼?你已經完成了?是你如何解決問題和調試?)。

對於後代,我應該指出,如果你改變德爾福版本當然,有些事情會改變。例如,如果在Delphi 2009或更高版本中構建Delphi應用程序,它將在Windows XP上正常工作,但不會在Windows 98或ME上正常工作。但是,如果您使用相同版本的Delphi構建應用程序,爲什麼您會期望應用程序的錯誤發生任何變化?正如大衛說的那樣:

在不同的計算機上重建應用程序,使用相同的代碼和相同的編譯器生成相同的二進制文件。如果你在Windows XP上有一個基本問題,那是因爲你在代碼中犯了一個錯誤。

一般來說,Windows 98/ME到2000/XP是一個簡單的過渡,但那是十年前。 我記得那個在Windows 98/ME中不在XP中的唯一API是Windows 98文本到語音API,它在XP中被刪除並被替換爲不同的API。

我相信你的困惑是windows包含了影響數據感知控件的東西。它不是。數據感知控件純粹是Delphi的事情,它們不是Windows XP的一部分,它們在Delphi中100%實現。如果你有一些寫得不好的有趣的自定義控件,可能它不起作用。我們不知道你的代碼包含什麼,甚至沒有描述失敗的本質。

您需要提供更多信息,否則應將此問題關閉爲無法解析或過於本地化。 (我的應用程序不起作用!幫助!沒有給出其他信息。)

相關問題