У меня есть простое приложение, которое использует dbExpress для подключения к базе данных Informix. Если я скомпилирую его с помощью TurboDelphi, он будет работать как на WinXP, так и на Win2003.
Когда я использую новый Deplhi 2009, мое приложение нормально работает на WinXP, но не запускается на Win2003. Нет MessageBox с ошибкой, только информация в EventLog:
Faulting application inf_dbexpress_test.exe, version 0.0.0.0, faulting module kernel32.dll, version 5.2.3790.4062, fault address 0x0000bee7.
Я думаю, что это проблема с драйвером dbExpress, в то время как другое мое приложение, скомпилированное с помощью Delhi 2009, использует ODBC для подключения к Informix работает на Win2003.
Кто-нибудь может проверить, работают ли драйверы Informix dbExpress от Delphi 2009 с Windows 2003?
Спасибо за помощь, но это не работает.
Что касается $INFORMIXDIR:
Я переустановил ClientSDK 3.5, и теперь мой $INFORMIXDIR:
c:\informix
(был c: \ Program Files ...).
Я могу подключиться к БД из моего приложения, которое использует ODBC. Но приложение dbExpress не запускается даже в режиме совместимости с WinXP.
Я сообщил об этом в Delphi Quality Central как ошибка № 67823:





Хм, может быть, странное предложение, но одно из больших отличий Delphi 2009 - это Unicode. Все строки теперь являются строками Unicode. Может ли это быть объяснением проблемы?
Мое второе приложение, скомпилированное с помощью D2009, работает на Win2003, но вместо dbExpress оно использует ODBC, созданный вручную.
Какая у вас турбо-версия (версия .net или версия Win32)? У вас установлен .NET Framework на 2003?
Имею TD для Win32. Я пробовал программу на Win2003 с установленным .NET framework (теперь я вижу, что на этих компьютерах .NET framework версий 2.0 SP2, 3.0 SP2 и 3.5 SP1).
Можете ли вы попробовать установить Delphi 2009 на машину 2003 года и попытаться отладить там свою программу?
Нет. Я использовал пробную версию D2009, и срок ее действия истек :(
Это очень простое приложение: никакого кода, только сетка БД с простым запросом: ВЫБРАТЬ ПЕРВЫЙ 1 DBINFO ('версия', 'полный') FROM systables; Это же приложение работает на XP. Если бы что-то не так с Unicode, я думаю, он бы не работал с XP.