У меня есть Delphi XE3, Windows 7 Pro 64bit. Мое приложение отлично работает на моем ПК, но мои пользователи сказали мне, что при сбое приложений на Win Win XP и также (!!) на их Win 7.Ошибка приложения по WinXP
Я попытался запустить приложение на своей Win 7, но зарегистрировался как обычный пользователь (без администратора) - он работает. Итак, теперь я установил виртуальную машину с Windows XP и действительно - при сбое приложения происходит сбой.
Мне нужно найти, что может быть проблемой, но я беспомощен.
Насколько я не могу использовать отладчик (я не имею Delphi на этой виртуальной машине установлен), Я пытался поставить некоторые MessageBox(0, 'Hello', 'Test', MB_OK);
в различных местах, в мое приложение, чтобы поймать место, где это происходит, и это то, что я нашел :
у меня есть это в моем проекте-источнике:
MessageBox(0, 'Hello', 'Test', MB_OK); // shows OK
Application.CreateForm(TfMain, fMain);
MessageBox(0, 'Hello', 'Test', MB_OK); // doesn't show - crash before this line
И это в OnCreate
функции моей главной формы, которая называется fMain
:
procedure TfMain.FormCreate(Sender: TObject);
begin
MessageBox(0, 'Hello', 'Test', MB_OK); // doesn't show - crash before this line
...
Итак, где может произойти сбой этого приложения?
Выполняется даже первая строка в OnCreate
....
Я понятия не имею ... Кто-нибудь?
Не знаю, важно ли это: у меня есть некоторые единицы в статье fMain uses
под номером interface
, а также под implementation
. Должен ли я там посмотреть? Но что происходит непосредственно перед OnCreate
моей основной формы?
Вы не можете отлаживать, потому что у вас нет Delphi, установленного на вашей виртуальной машине. Вы знаете, что есть несколько действительно простых способов исправить это, не так ли? –
@ Rob Kennedy Хммм, если бы я знал, я бы сделал это. Какие-нибудь советы? – Enriqe
Я не Роб, но с головы: 1) Установите Delphi на эту виртуальную машину. 2) Используйте удаленный отладчик (подробности см. В документации по Delphi [http://docwiki.embarcadero.com/RADStudio/en/Installing__Starting,_and_Stopping_the_Remote_Debug_Server]). Что до того, что происходит непосредственно перед 'OnCreate' ?, используйте источник. Вы найдете это в 'Forms.pas'. –