forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Чёрное окошко перед запуском проги на B3D (http://forum.boolean.name/showthread.php?t=7923)

ABTOMAT 04.03.2009 17:11

Чёрное окошко перед запуском проги на B3D
 
Как отключить сабж? Нет, мне сильно не мешает, но просто интересно) Кто-нибудь сиё ковырял?

ARA 04.03.2009 18:34

Ответ: Чёрное окошко перед запуском проги на B3D
 
я в замешательстве - сна лишил!

Randomize 04.03.2009 19:17

Ответ: Чёрное окошко перед запуском проги на B3D
 
Я гдето давно в интернете видел dll для этих целей, но где не помню.
Как вариант использовать Splash Screen поверх окна.
Но тут опятьже надо писать Dll для отлова сообщения от окна B3D.
В принципе этот вопрос может решится только через WinAPI.
Будет время я поковыряюсь и напишу об этом.

IGR 04.03.2009 19:30

Ответ: Чёрное окошко перед запуском проги на B3D
 
в Gile[s] помойму есть Splash Screen, пока прога грузится, если неошибаюсь !!

impersonalis 04.03.2009 19:38

Ответ: Чёрное окошко перед запуском проги на B3D
 
вроде jimon предлагал решение пару лет назад

-=Jack=- 04.03.2009 19:38

Ответ: Чёрное окошко перед запуском проги на B3D
 
Меня тоже когдато интересовал такой вопрос. Окошко появляется ещё до того, как начинает исполнятся код программы. Тоесть убрать его вызовом какой-либо функции из программы - не возможно. Единственный вариант - поковыряться в компиляторе блица и:
1. Убрать из стилей флаг WS_VISIBLE
2. Если такого флага нет, найти вызов ShowWindow и убрать его.

Randomize 04.03.2009 20:00

Ответ: Чёрное окошко перед запуском проги на B3D
 
Алгоритм следующий:
1)запуск приложения (приложения лаунчера)
2)запуск B3D приложения
3)Поиск хендла окна B3D
3)скрытие окна
4)Ожидание сообщений
5)посылка сообщения от B3D приложения
6)Показываем окно

По первому пункту:
Можно написать приложение например на Delphi, которое будет запускать приложение B3D. Чтобы при запуске не получился слишком большой Delay(пауза) выводим незамысловатый Splash screen с чемнибуть забавным.

По третьему пункту:
Надо организовать чёткую взаимосвязь между приложениями.
Я предлагаю на хендлах и SendMessage

По пятому пункту:
Как только приложение B3D осуществляет инициализацию и передаёт управление коду первой строчкой шлём сообщение лаунчеру чтоб он показал окно и благополучно отработав ушол за кулисы.

В процессе родилась идея медленного появления B3D окна "из альфы" . Но на счёт FullScreen oстались вопросы...


Как найду свободное время, перейду к практике.


2IGR:
Незнаю не юзал Gile[s]

2-=Jack=-:
Я в соё время пробывал, B3D окно нормально подвергается всем манипуляциям, тоесть одного ShowWindow будет достаточно.

tormoz 04.03.2009 20:09

Ответ: Чёрное окошко перед запуском проги на B3D
 
Максус убирал это окно еще года 3 назад
через винапи

ABTOMAT 04.03.2009 20:51

Ответ: Чёрное окошко перед запуском проги на B3D
 
Цитата:

Максус убирал это окно еще года 3 назад
через винапи
Тормоз, на каком форуме он писал про это? (Тут я не нашёл ничего) Есть ли шанс наткнуться на сию инфу на Blitzpp?

-=Jack=- 04.03.2009 21:06

Ответ: Чёрное окошко перед запуском проги на B3D
 
Цитата:

Сообщение от Randomize (Сообщение 99543)
Я в соё время пробывал, B3D окно нормально подвергается всем манипуляциям, тоесть одного ShowWindow будет достаточно.

Ну таким манипуляциям поддаётся любое окно, а вот модифицировать компилятор(или Runtime.dll) так, чтобы оно не показывало это окно - это уже сложнее...

Насчёт третего шага: может и WinExec('file.exe',SW_HIDE) прокатит...

ABTOMAT 04.03.2009 21:09

Ответ: Чёрное окошко перед запуском проги на B3D
 
Просто не прьот делать ещё exeшник на сяхе в дополнение к б3дшному

-=Jack=- 04.03.2009 21:31

Ответ: Чёрное окошко перед запуском проги на B3D
 
Вот и я об этом. Надо калечить компилятор ;)

ABTOMAT 04.03.2009 21:40

Ответ: Чёрное окошко перед запуском проги на B3D
 
Я так понял до старта программы вызывается Graphics 400,300 чтобы команды типа Print Write Cls (т.е. обычные безиковые) работали без чего-то ещё дополнительного
Может в runtime.dll эта фигня прописана?
З.Ы. Нашёл в гугле такую херню: http://www.blitzforum.de/showcase/165/
Щас посмотрю шо она умеет. Кто-нить шпрехает, что на ней написано?
Вот кстати ещё: http://www.blitzforum.de/forum/viewtopic.php?t=24932
Только нихт ферштайн :(

NitE 04.03.2009 22:37

Ответ: Чёрное окошко перед запуском проги на B3D
 
короче говоря черь там о том что -
1. проблема в рантайм.длл
2. патч убирает это окошко из всех программ которые работают не в дебаг моде
3. программа изменяет exe файл
4. если после патча надо чтоб в какойто проге опять было окно надо:

Цитата:

Userlib

Код:

.lib "user32.dll"
ShowWindow( hwnd%, show% )

после инициализаций графики

Код:

ShowWindow( SystemProperty( "AppHWND" ), True )

сам лично не разобрался как она работает )))

ABTOMAT 04.03.2009 22:42

Ответ: Чёрное окошко перед запуском проги на B3D
 
Я тоже... хз куда её пихать


Часовой пояс GMT +4, время: 12:42.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot