Замена explorer.exe

Тема в разделе "WASM.WIN32", создана пользователем Gloomy, 2 сен 2004.

  1. Gloomy

    Gloomy New Member

    Публикаций:
    0
    Регистрация:
    29 май 2003
    Сообщения:
    48
    Адрес:
    Екатеринбург
    Появилась идея написать сверх-минималистическую оболочку и использовать ее вместо explorer.exe. В оболочке будет только панель задач и трей - и все, больше ничего. Скачал исходники LiteStep, изучаю, однако хотелось бы почитать дополнительную информацию о том как вообще должна работать подобная программа?

    Возможно кто-то уже интересовался этим вопросом? Буду очень признателен за любые подсказки!
     
  2. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    Так а что там может быть специфического?

    Вроде бы прописываешь в качестве shell хоть cmd.exe - и вперед.

    Если есть что-то дополнительно - мне тоже интересно...
     
  3. zzzyab

    zzzyab New Member

    Публикаций:
    0
    Регистрация:
    13 май 2004
    Сообщения:
    115
    Explorer от NT4\95 вполне нормально работает. Если тебе не нужен граф. интефейс используй сmd. И на list.shellfront.org/list.htm есть много чего полезного.
     
  4. n0p

    n0p 10010000b

    Публикаций:
    0
    Регистрация:
    7 май 2003
    Сообщения:
    256
    Адрес:
    Новосиbeerск
    А идея минималистической оболочки не нова. :) Кажется, ее по молодости пытаются написать все... :)
     
  5. SteelRat

    SteelRat New Member

    Публикаций:
    0
    Регистрация:
    26 авг 2004
    Сообщения:
    409
    На счет замены на cmd.exe, однажды на работе прикололись и сделали товарищу, тогда ещё, из 95 винды - 3.11 :) Он долго голову ломал...
     
  6. kyprizel

    kyprizel New Member

    Публикаций:
    0
    Регистрация:
    1 авг 2003
    Сообщения:
    232
    Адрес:
    TSK
    www.fluxbox.org

    что-то подобное под windows хотелось бы :)
     
  7. Gloomy

    Gloomy New Member

    Публикаций:
    0
    Регистрация:
    29 май 2003
    Сообщения:
    48
    Адрес:
    Екатеринбург


    Проблема в окошках: которые сворачиваются в панель задач с теми все ОК - выглядят как в старом добром Win3.1. А вот те окошки, которые сворачиваются в трей, просто исчезают!

    В принципе можно обойтись даже без панели задач, написав только аналог трея (например как в упомянутом FluxBox).



    zzzyab

    Спасибо, очень полезная ссылка! Жалко что исходники к каждой из этих оболочек не дают...



    n0p



    Тогда где же мегабайты исходников? :)
     
  8. kyprizel

    kyprizel New Member

    Публикаций:
    0
    Регистрация:
    1 авг 2003
    Сообщения:
    232
    Адрес:
    TSK
    а разве не

    progman.exe

    надо прописать

    чтобы получить подобие win3.1
     
  9. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    Если проблема - иконка в трее,

    то вероятно придется поизучать Shell_NotifyIcon().

    На первый взгляд похоже, что иконки рисуются в окне

    по имени "Shell_TrayWnd"(win2k), то есть имеются два пути - посмотреть, как это самое окно делается ехплорером,

    либо создавать собственное с таким именем и обрабатывать

    его сообщения.
     
  10. khv_test

    khv_test New Member

    Публикаций:
    0
    Регистрация:
    30 июн 2004
    Сообщения:
    135
    вот пример эксплоера на асме:

    http://www.japheth.de/ExplASM.html

    можно ни че не писать..

    только в памяти он жрет стокаже стока стандартный т.к. юзает стандартные компоненты..

    зы: (тот ли ты Gloomy, который с http://gl00my.chat.ru/)

    ?"отличные статьи":"не знаю че сказать"...
     
  11. n0p

    n0p 10010000b

    Публикаций:
    0
    Регистрация:
    7 май 2003
    Сообщения:
    256
    Адрес:
    Новосиbeerск
    Gloomy

    Мегабайты исходников?? Хех.

    Этапы развития проекта:

    1. Идея. Без этого никуда.

    2. Разработка концепции и схемы.

    3. Выбор языка.

    4. Попытка сделать каркас.

    5. Тест каркаса.

    6. Вторая попытка сделать каркас, но уже рабочий. Старый вариант забыт и удален.

    7. Тест нового каркаса.

    8. Написание тела проги.

    9. Тест отдельно каждого элемента.

    10. Переписывание половины элементов.

    11. Повторный тест элементов.

    12. Сборка проекта.

    13. Тест.

    14. Удаление половины элементов.

    15. Снова тест.

    16. Поиск аналогов в инете.

    17. Забивание на проект.

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



    Я в свое время после 7го пункта перешел к 16ому и не жалею ничуть. :) Но зато получил много опыта и левелап. %)
     
  12. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    зы: (тот ли ты Gloomy, который с http://gl00my.chat.ru/)





    Нет, не тот :) Тот уже давно в Linux ушел :)
     
  13. Gloomy

    Gloomy New Member

    Публикаций:
    0
    Регистрация:
    29 май 2003
    Сообщения:
    48
    Адрес:
    Екатеринбург
    _Juicy



    Пробовал создавать окно с таким именем класса - результата никакого. Наверное нужно его как-то регистрировать или что-то типа того?



    khv_test



    Мне нужен не новый Проводник а новая оболочка.





    Нет, не тот. Ник интернетовский принял по мирскому прозвищу - Угрюмый.



    n0p



    А где пункт "изучение исходников подобных проектов"? :) Не думаю что придется так долго мучатся: см. в аттаче скриншет рабочего стола - хочу чтоб было так же (трей обязателен, панель задач сделаю если станет скучно).



    2All

    Подскажите пожалуйста где можно найти инфу по трею - сколько искал везде находил только статьи а-ля "как запихать иконку в трей" :dntknw:

    [​IMG] 148823292__scr.png
     
  14. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    Результата никакого - это что значит?

    Окно не создается? shell32 его не находит?

    Окно не получает сообщений?
     
  15. Gloomy

    Gloomy New Member

    Публикаций:
    0
    Регистрация:
    29 май 2003
    Сообщения:
    48
    Адрес:
    Екатеринбург
    Иконки на него не желают "прицепляться".
     
  16. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    Дело shell32 - отправить твоему окну сообщение.

    Сообщение в вин2к - 0x4A, посылается через SendMessageTimeout.

    Для начала попробуй его отловить.
     
  17. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    Это WM_COPYDATA,

    wParam

    Handle to the window passing the data

    lParam

    Pointer to a COPYDATASTRUCT structure that contains the data to be passed
     
  18. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    И хорошо бы, если ты сам проверишь, так ли это работает на твоей системе.
     
  19. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    _Juicy



    Если взгляд вооружить утилитой spy++ из VisualStuio,

    то увидим что "Shell_TrayWnd" - это вся пусковая панель, а собственно трей - TrayNotifyWnd, в котором еще два элемента : часики - TrayClockWClass и иконки : ToolbarWindow32.
     
  20. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    И как этот факт поможет нам создать собственную панель,

    если сообщения посылаются Shell_TrayWnd?