nyurka: (Default)
[personal profile] nyurka
Нет, я ненавижу WinCE. С ее совершенно глючной средой разработки, с ее падающей на ровном месте связью, с ее вечно зависающими программами, которые, как водится, всегда жрут ровно в 2.5 раза больше ресурсов, чем положено, и в полтора раз больше, чем есть в самом покете.
Но обвинять ее, родную, во всех смертных грехах, это как-то, ну, нахально даже.
Приезжаю в бывшую контору - там начальство с программером носятся, за голову держатся и причитают, что из-за специфики системы не могут вызвать диалог выбора маршрутов.
Смотрю на диалог.
В инициализации - код. Не умрите со смеху:

char buf[10];
strcpy(buf, "Select path for visualization - click on the path name");

Ни фига не обкурилась - все именно так и было написано.
Спрашиваю - а чего там букв мало?
Вы бы в 10 байт большую советскую энциклопедию попытались уместить - было бы гораздо смешнее.
Обиделись...
На пару...

on 2006-11-24 07:45 pm (UTC)
Posted by [identity profile] cynicanonimus.livejournal.com
Меня возьмите, я стримами пользоваться умею!
Posted by [identity profile] nyurka.livejournal.com
- Зло -
Сильно тебе стримы помогут в EVC.
Там половины стандартных функций нет, а оставшаяся половина работает через зад.

Но это все-равно, конечно, не причина при любой проблеме кричать "система виновата"
Posted by [identity profile] cynicanonimus.livejournal.com
Да я вообще-то писал под WinCE, как бы в курсе, что сильно кастрированная система.
Posted by [identity profile] nyurka.livejournal.com
О!!!
Первый знакомый, работавший с этой пакостью!!!
Долго в EVC писал?
(Это на меркантильный предмет задать пару вопросов :)))
Posted by [identity profile] cynicanonimus.livejournal.com
Два с половиной года. Писали для Неметчины, еще сидя в России. Правда, один момент: я работал под EVC 3.0, посему если у тебя вопросы, связанные с более старшими версиями - извини, я бесполезен.

Помоги, отец родной!!!

on 2006-11-25 04:02 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Смотри, у меня в этой злоебучей навигации - я такого слова не говорила - фактически, помимо глупых ошибок (см. пост) - долгой доброй памяти от кучи набранных наспех программеров, осталась всего одна, но сильная головная боль. Имя ей - виртуальная клавиатура.
Меня не устраивает CE-шная, меня не устраивает на каждое желаемое слово вызывать отдельный диалог с этим словом и меня не устраивает отрисовывать побуквенно на каждом едит-боксе, главным образом потому, что я потом с ивритом не разберусь.
В не-покетовской навигации у меня есть своя клавиатурка, приаттачивается к нужному процессу, делает свои дела и самоликвидируется.
В CE приаттачиваться никто никуда даже не собирается, просто потому, что ни одной функции для этого там не предусмотрено, во всяком случае в EVC-4, а ничего другого у меня пока нет.
Готова выслушивать любые, даже самые глупые советы, потому как свои идеи по этому поводу у меня отсутствуют :(

Re: Помоги, отец родной!!!

on 2006-11-25 04:15 pm (UTC)
Posted by [identity profile] cynicanonimus.livejournal.com
С клавиатурой не работал, но вот тебе сразу глупый совет:

пишется своя собственная клавиатура, которая вызывается из процесса в нужный момент, и которой скармливается хендлер окна ввода текста. Пишется один раз, работает из чего угодно. Я видел такой вариант "самопальной" клавиатуры, работало достойно.

Re: Помоги, отец родной!!!

on 2006-11-25 05:04 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Спасибо, конечно, за идею, но с фокусом-то что делать??????

Re: Помоги, отец родной!!!

on 2006-11-25 05:16 pm (UTC)
Posted by [identity profile] cynicanonimus.livejournal.com
А зачем тебе что-то с фокусом делать???
Ты вызвала другое приложение. Передала ему хендлер target-окна. После набора текста и нажатия кнопки заслала этот текст в target-окно. Пока не вижу никаких проблем.

Re: Помоги, отец родной!!!

on 2006-11-25 05:40 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Понятно, меня такое не устраивает, мне нужна именно клавиатура, а не "диалоговое окно с едит боксом для написания нужного слова".
Это-то я сама знаю :((

Re: Помоги, отец родной!!!

on 2006-11-25 05:59 pm (UTC)
Posted by [identity profile] cynicanonimus.livejournal.com
Да не написания!

Диалоговое окно. Верхняя часть - текст, нижняя - отрисованные кнопки. нормальная такая клавиатура, текст попадает в окно назначения по окончании редактирования. У меня машинка под Симбианом такой штукой оснащена, показать тебе картинку?

Re: Помоги, отец родной!!!

on 2006-11-25 06:08 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Покажи, может мы с тобой про разные вещи говорим.
Но если ты имеешь ввиду такую приблуду - диалог, вверху эдит бокс для слова, снизу куча кнопок "а-ля клавиатура", печатаешь этими кнопками на эдит боксе и по какой-нибкдь команде "done" пересылаешь по назначению - именно это меня не устраивает.
Такое я десятками видела и пишется это в течении пары минут.
Если не такое - покажи, может действительно свежая идея.

Re: Помоги, отец родной!!!

on 2006-11-25 06:13 pm (UTC)
Posted by [identity profile] cynicanonimus.livejournal.com
Это такое. А чем оно тебя не устраивает, если не секрет? Просто я с этой штукой каждый день работаю, вроде удобно.

Re: Помоги, отец родной!!!

on 2006-11-25 06:33 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Не устраивает по 2 причинам
1 - по требованию заказчика, клавиатура должна использоваться не только для "имя-адрес", но и, например, "пункты следования маршрута автобуса".
Там массив из эдит боксов, который меняется в зависимости от маршрута и заполняется пользователем, и что я должна буду делать с этим диалогом клавиатуры?
2 - когда еще в свое время я писала клавиатуру для стандартной Windows, мы перебрали кучу вариантов и остановились именно на виртуальной приаттачивающейся клавиатуре как самой удобной для пользования, а учитывая, что навигационная система не слишком примитивная, и используемая иногда как контрольный центр для, например, кучи автобусов, надо чтобы клавиатура была максимально удобной именно как динамическая - например написал в одном месте, на середине остановился, перешел на другое, потом на третье, потом снова аернулся дописывать. А с диалогом это очень муторно.

on 2006-11-25 04:37 pm (UTC)
Posted by [identity profile] rsx11.livejournal.com
Ой, а вот очень интересно, что вы вообще скажете про WinCE ?

При моём офигительном опыте работы с самыми разными embedded системами (Linux, pSoS, VxWorks, куча самопальных мониторов и микрокернелов) - ничего не знаю о WinCE. А тут, недавно задумались о системе для следующего продукта - и выяснилось, что при суммарном опыте больше полусотни лет в embedded - с WinCE не знаком никто...

Что интересует:

1. Легкость и гибкость написания драйверов
2. Как это - писать драйвера втёмную (не имея исходников системы, когда любой вопрос решается с помощью grep-а и какой-то матери)? Сильно напрягает?
3. Уровень документированности (учитывая отсутствие сорцов - должен быть на несколько порядков лучше). Так ли это?
4. Latency
5. Overhead (как по памяти, так и по времени)
6. Среда разработки и качество кросс-компайлеров (интересует PPC). Я так понимаю, что о гнусных продуктах и мечтать не приходиться?
7. Всякие побочные BSP-related примочки, типа flash-loader-ов, initrd, rootfs -насколько всё это гибко и настраеваемо?


Спасибо.

on 2006-11-25 05:36 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Смотрите, основные минусы WinCE - это то, что во-первых,не работают даже те основные функции, которые работают всегда и везде, а во-вторых, и это самое дерьмовое, нет хорошо сделанной документации.
MSDN, который с ней поставляется - это песня.
Если там написано, что функция поддерживается с 1-й версии и дальше, это ничего не значит, Вы вполне после пары дней работы можете получить результат ошибки "не поддерживается средой". С другой стороны, если написано, что функция не поддерживается - тоже ничего не значит, я сделала шикарную визуалку для навигации исключительно из функций, которые, согласно MSDN работать не должны по определению.
Плюсы - на чистом С работает все и всегда, есть куча адаптированных библиотек всех сортов, включая нежно мной любимую STL, а главное, системка с бешеным будущим, мне недавно принесли покеты с 8 дюймовым экраном, хорошим процессором, легенькие, тоненькие - сказка.
Так что самый основной совет - ищите человека с хотя бы 2-3 годами опыта в CE, просто потому, что большинство вещей там творящихся, просто надо знать, информации кроме собственного опыта у меня, например, никакой нет.

1. Писать, зная подводные камни - читай имея опыт - очень легко, а с хорошим опытом еще и в чистом С - в чем-то даже легче, чем под стандартный Windows, например тем, что никакого кастинга система сама не делает, посему и сюрпризов по этому поводу не бывает.
2. Опять же нужен человек с опытом, одна из самых дерьмовых проблем этой системы - в большинстве случаев программы не падают, они просто "уходят в себя", и как правило в релизе, и очень сложно понять что именно происходит. См пост - результатом этой дурацкой ошибки не стал ни краш системы, ни краш программы, просто диалог не появляется, но и ошибка тоже.
3-7 см выше

on 2006-11-25 06:03 pm (UTC)
Posted by [identity profile] rsx11.livejournal.com
Понял, спасибо.

А что за зверь такой, STL на чистом C? Никогда не слышал...

on 2006-11-25 06:10 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Прикол оценила.
Но вообще-то там запятая стоит, если не заметили.

on 2006-11-26 06:35 am (UTC)
Posted by [identity profile] rsx11.livejournal.com
На самом деле не такой уж и бред. Бывают ситуации, когда нужно что-то сделать на чистом С (проблема с компайлером, экзотическая архитектура, очень серьёзные ограничения, когда каждый байт считаешь, и т.д.).

Я всегда, в таких случаях, использую GLIB (GTK low level) в качестве STL для бедных :-)

on 2006-11-25 07:15 pm (UTC)
Posted by [identity profile] rsx11.livejournal.com
То есть, другими словами - без опыта в "обычном" Windows - не суйся, правильно?

on 2006-11-25 07:34 pm (UTC)
Posted by [identity profile] nyurka.livejournal.com
Не правильно :)
Другое дело, что будет попроще, ибо CE-шное API оно фактически очень сильно урезанное Windows-ное.
Так сильно урезанное, что уже не понятно кто он был вначале:))
Но ничего такого, что не сможет понять нормальный хорошо обученный программер нет.
Фактически и про опыт в CE я написала, исходя из того, что одним из требований как правило является скорость исполнения. Просто очень много времени уйдет на то, чтобы понять откуда начинают валиться сюрпризы.
Небольшая реплика в сторону по теме - когда у меня даже в проекте CE не было, были мы на какой-то конференции, там один из парней работавший с этой пакостью сказал - не пользуйся для работы в CE с большими картинками malloc, используй VirtualAlloc, я как-то случайно запомнила это дело, но, разумеется, использовать не стала - разница в скорости большая, а когда вдруг уже в CE начала без перерыва получать ошибки с памятью - вспомнила - все сразу заработало, так вот - ни в одном месте и ни в одной конференции я этого не нашла.
Это к вопросу об опыте.
Так что гораздо полезней, если все-таки собираетесь с ней работать, собирать вот такую информацию со всех возможных источников, чем опыт, ибо даже самый опытный может конкретно я этой задачей за всю жизнь ни разу не столкнуться.
Повторяюсь - это в том случае, если время не критично.

Profile

nyurka: (Default)
nyurka

January 2013

S M T W T F S
   1 2345
6789101112
13141516171819
20212223242526
2728293031  

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 22nd, 2026 11:46 pm
Powered by Dreamwidth Studios