Delphi 2009, внутрипроцессный ком. Сообщение об ошибке - «Ошибка функции Os» - PullRequest
3 голосов
/ 29 июня 2009

Я создал внутрипроцессный com-сервер, использующий Delphi 7, он отлично работал на Windows XP и всех версиях Windows Vista. После обновления до Windows Vista все интерфейсы доступны, кроме этого только одного интерфейса, который выдает следующее сообщение об ошибке:

'Функция Os не выполнена'.

В Руководстве для разработчиков Microsoft говорится, что Абстрактная модель данных была изменена с целью обеспечения взаимодействия процессов в 64-битных и 32-битных приложениях. Они представили вспомогательные функции, и новые типы данных могут быть обработаны в файле BaseTsd.h, который я не могу найти после установки CodeGear RAD Delphi 2009 Professional. Microsoft рекомендовала импортировать BaseTsd.tlb, чтобы позаботиться о новых типах данных в своих последних операционных системах, поддерживающих как 64-разрядные, так и 32-разрядные. Если бы только мог, компилятор Delphi 2009 мог генерировать 64-битное приложение. Я мог бы по крайней мере получить предупреждения и сообщения об ошибках. У меня возникают проблемы с поиском и генерацией файла BaseTsd.tlb, где я могу найти файл для импорта в моем .ridl, пожалуйста, помогите.

Есть ли обходной путь?

Sam

1 Ответ

0 голосов
/ 20 августа 2010

Вы можете использовать Process Monitor , чтобы определить, где заблокирован процесс, и хотя бы получить представление о происходящем.

...