Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Дочерние окна [D7, Win2k, WinXP]


Страницы:   1 2 3

IntruderLab ©   (2008-05-29 11:03:00) 

Вопрос вобщем-то вот в чем, в программе дочерние окна содержаться в dll, при запуске программы в winXP все работает прекрасно, при запуске win2000 в момент вызова процедуры открытия дочернего окна вылетает ошибка. Как с этим бороться?


Renegat_   (2008-05-29 16:54:00) [1]

А может быть, дело в "ошибке 2000"? %)


Сергей М.   (2008-05-29 16:41:00) [2]


> LoadKeyboardLayout(StrCopy(Layout,'00000419'),KLF_ACTIVATE);


А это что за танцы с бубном ?
Почему не просто LoadKeyboardLayout('00000419',KLF_ACTIVATE) ?


Сергей М.   (2008-05-29 16:32:00) [3]


> еще до обращения к коду (типа в Init)


Никаким Init в приведенном тобой в [19] коде даже не пахнет.
Т.е. ты предоставляешь заведомо недостоверную инф-цию и при этом ожидаешь какой-то конкретной помощи)


Сергей М.   (2008-05-29 16:25:00) [4]


> из-за вызовов ошибка может в 2000 выскакивать или в чем?


ошибка может быть где угодно, когда ты не понимаешь что ты делаешь


Сергей М.   (2008-05-29 16:20:00) [5]


> Код нигде не сдирал, просто в учебнике был вызов stdcall


Ну вот с учебника и содрал. Бездумно)


IntruderLab   (2008-05-29 16:18:00) [6]

Код нигде не сдирал, просто в учебнике был вызов stdcall и стал применять как следствие, и все таки, из-за вызовов ошибка может в 2000 выскакивать или в чем?


Сергей М.   (2008-05-29 16:15:00) [7]


> а что тогда лучше safecall использовать?


Лучше отложить на время строгание кода и почитать соотв.литературу.

Или хотя бы станд.справку Делфи на тему "calling conventions".

Судя по тому, что ты до сих пор не сделал этого, код был где-то содран тобой совершенно бездумно. Чему ж тут удивляться, если этот код не работает)


IntruderLab   (2008-05-29 16:10:00) [8]

дак а что тогда лучше safecall использовать?


Сергей М.   (2008-05-29 16:02:00) [9]

Только прежде надо понимать, чтоты хочешь и что ты для этого делаешь)

К примеру, судя по stdcall, ты вознамерился использовать свою dll в модулях, собранных в иных средах разработки, нежели Делфи или BCB. Откуда там возьмутся дельфийские MDIParent-формы - одному тебе известно)


IntruderLab   (2008-05-29 15:56:00) [10]

Да я и чую :) Лана, спасибо! Как разберусь напишу чего было :)


Сергей М.   (2008-05-29 15:54:00) [11]

Ну так а кто за тебя это будет делать ?)


IntruderLab   (2008-05-29 15:48:00) [12]

Дак отлаживать надо в 2000


Сергей М.   (2008-05-29 15:48:00) [13]

берешь отладчик и выясняешь)


IntruderLab   (2008-05-29 15:45:00) [14]

Мне важно знать - почему работает в ХР и не работает в 2000


Сергей М.   (2008-05-29 15:36:00) [15]

Чтобы она заработала, надо четко осознавать происходящее в ней)

А ты до сих пор не знаешь, то ли убирать stdcall то ли не убирать, то ли функция тебе нужна то ли процедура)


IntruderLab   (2008-05-29 15:23:00) [16]

Мне надо, чтобы программа заработала на win2000 :) в идеале :) на ХР работет прекрасно :)


Сергей М.   (2008-05-29 15:10:00) [17]

Смотря что тебе надо)


IntruderLab   (2008-05-29 15:07:00) [18]

Тогда вопрос, что мне сделать?


Сергей М.   (2008-05-29 14:52:00) [19]


> Сейчас тогда уберу


Зачем ?)


> получается что мне лучше все функции гда формы вызывается
> без ответных параметров - сделать процедурами?


А как будешь результат возвращать ?)


IntruderLab   (2008-05-29 14:43:00) [20]

Сейчас тогда уберу. И получается что мне лучше все функции гда формы вызывается без ответных параметров - сделать процедурами?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо