Посиделки с админом

Масаракш, твою в качаль!

Advertisement

Author Archive

Explorer vs Unicode

By on Июнь 12, 2010

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

Вначале у меня возникло стандартное предположение — вирусы, хотя заказчик и уверял, что на ЭВМ стоит Касперский 2009 и базы регулярно обновляются, так же так как Виндовс лицензионный, то стоят все сервис-паки и заплатки. Что ж, включаю ноутбук и загружаюсь. Появляется «подобие» рабочего стола — синий фон, панель задач и кнопка пуск. Всё. Дальше машина висит — запустить ничего невозможно и через время вываливается синий экран с кодом ошибки доступа к памяти. В безопасном режиме та же петрушка. Загружаюсь в WinPe делаю проверку системного диска утилиткой от ДоктораВеба — чисто. Хорошо, попался совсем новый вирус. Качаю AVZ, проверяю — чисто. Попутно узнал, что в нем есть сканер руткитов и еще over9000 утилит и функций.

Решил смотреть лично и править ручками если что. Загрузился и успел вызвать диспетчер задач. Оказывается ничего и не висло, а просто процесс explorer.exe загружал оба ядра на все 100% и через время вызывал синий экран. Это уже было интереснее. Проведя еще ряд стандартных и не очень процедур (sfc, замена файла експлорера на заведомо чистый и работоспособный, чтение реестра Windows), я понял что пришло время гугления.

После довольно продолжительного чтения гуглов и колупания реестра я все же нашел, где порылась собака. Оказалось, что на рабочий стол из интернета сохранили пару файликов с именами в юникоде и это как оказалось експлореру не очень понравилось. Что он пытался с ними сделать — это загадка, отгадку знают только индусы, которые эту заразу писали на своем пенджабе. В процессе поиска решения своей проблемы выяснил, что такой же эффект вызывают некоторые драйвера для принтеров HP, а так же что удивительно битые файлы avi, если в проводнике используется построение эскизов для содержимого. Таким образом простым переименованием файлов удалось решить все проблемы, правда на все было потрачено около четырех часов и получено +100 в XP и +10 в телепатию.

Итак, в сухом остатке имеем следующее:

  • не стоит сохранять на рабочем столе документы и любые другие файлы, кроме ярлыков (я так обычно и поступаю, но теперь у меня появился еще один повод советовать так делать и моим друзьям)
  • даже лицензионная ОС и наличие антивируса не спасет вас от возможных труднорешимых проблем с ПВЭМ
  • нелюбимая мною, но очень используемая в СНГ почтовая система еще раз доказала, что количество свиней, которые разработчики веб-морды заготовили для своих пользователей, довольно велико. Тысячи их.
  • Popularity: 1%

    Нашел на одном финансовом форуме занятную и вполне возможную речь нашего горячо любимого ПРезидента. Автора сего конспекта к сожалению я не знаю.

    Однажды Виктор Фёдорович выступал с обращением к украинскому народу.
    [More]

    Popularity: 1%

    Выходные прошли просто замечательно. Удалось попасть на целых два знаменательных мероприятия — празднование двухлетия ТЦ «Аврора» и на экстрим-шоу. Дальше много фоток и коментарии по делу и не очень. [More]

    Popularity: 3%

    Привезли мой заказ — коммуникаторы Toshiba G810 Portege и я не могу не воспользоваться возможностью написать миниобзорчик этих машинок.

    Toshiba G810 Итак, перед нами коммуникатор на базе Windows Mobile 6.1. Основные характеристики:

  • Процессор — 400 МГц
  • ОЗУ — 128 Мб
  • Поддержка 3G
  • Wi-fi b/g, Bluetooth 2.0 + EDR, GPS
  • Экран 2,8 дюйма, 320х240
  • Камера с автофокусом и светодиодной вспышкой, 3 Мп
  • Распаковав упаковку мы обнаруживаем собственно коммуникатор, аккумулятор, кабель синхронизации, наушники, зарядное устройство, диск с ПО и довольно толстую инструкцию пользователя. Чехла и запасного стилуса в комплект не додумались положить. Кстати я уже опытным путем выяснил, что кпк и коммуникаторы без чехла живут как минимум вдвое меньше, чем их сородичи в «одежках» — уж очень велика вероятность упустить или стукнуть машинку. Да и на внешнем виде отсутствие чехла сказывается самым пагубным образом.

    Так же в моём случае в поставку входил так называемый автокомплект — зарядное устройство для автомобиля, держатель на присоске, диск с ПО от NaviLux и карта памяти MicroSD на 2 Гб.

    Рассмотрим игрушку подробнее. Слева имеются кнопки регулирования громкости, слот MicroSD и, неожиданно, кнопка включения/выключения.

    Тошиба, вид справаСправа — кнопки диктофона и камеры, и разъем mini-usb для внешних коммуникаций и зарядного устройства, а так же хитровыебинныйумный стилус.

    тошиба сзади
    Сзади на небольшом выступе расположена камера, зеркальце и вспышка. Задняя панель выполнена из софт-тач пластика, приятная на ощупь. При длительной эксплуатации скорее всего стеклышко, которым закрыта камера будет царапаться и качество съемки ухудшиться.

    На передней панели есть камера для видеозвонков, датчик освещенности и 6 сенсорных кнопок. Вся панель сделана сплошной и глянцевой. Экран довольно чувствительный и яркий, как для моего вкуса. Бортики отсутствуют.

    Первое впечатление аппаратик производит довольно положительное — легкий, достаточно тонкий (всего 14 мм) и в целом симпатичный. К сожалению, первое впечатление бывает обманчивым, но об этом позже.

    После включения устанавливаются Spb Mobile Shell 2.0, Spb full screen keyboard. Программы идут под брендом Тошиба. Остальное ПО — стандартное для платформы, правда добавлены или изменены некоторые стандартные программы, особенно порадовал менеджер соединений и утилита для управления Wi-fi. Кстати среди офисных приложений замечен OneNote, но если честно я не в курсе является ли это заслугой Тошибы, или это сейчас кладут во все новые винды. Интерфейс кстати мне показался довольно быстрым и отзывчивым, возможно я установил немного программ, а возможно просто довольно много памяти на борту, но в любом случае — работало всё шустро и мне понравилось. Так же в моем случае на карте памяти из автокомплекта шла программа NaviLux’а для навигации с картами Европы. Она мне показалась очень похожей на iGo, хотя я могу и ошибаться в этом вопросе.

    Очень понравилась работа Wi-fi. Очень качественный и мощный приемник, при первом включении я нашел в свое округе кучу сетей и устройств, о которых даже и не подозревал.

    Ну, и наконец, ложка дегтя, столовая.
    Включенный G810
    Самый жирный минус — стилус. Какой дегенерат придумал делать стилус частью корпуса? Взять бы его руки, выдернуть да и вставить в то место из которого они собственно и растут. Во первых, в ОС Windows Mobile всех существующих версий невозможно пользоваться одними пальцами, всё равно проскакивают мелкие элементы управления, из начальных версий. Во вторых форма стилуса до ужаса неудобная — он реально параллелепипед, и загогулина на конце окончательно портит юзабилити. Соответственно пользоваться таким стилусом не представляется возможным. А в третьих, сделан он из очень хрупкого (по крайней мере на вид) пластика, и если его не потеряют, то сломают обязательно — а это между прочим часть корпуса. Таким образом, можно считать, КПК получается фактически без стилуса, и сразу же необходимо озаботится его приобретением, потому что ходить с отсутствующей частью корпуса как то не комильфо.
    Передняя панель, глянец
    Вторым минусом Тошибы будет у нас передняя панель. Конечно глянец это модно, и даже наверное красиво, … на витрине. Внешний вид отлично подойдет девушкам, спереди Toshiba превосходно заменяет зеркало. Вот пример:
    Toshiba как зеркало
    А вот в реальной эксплуатации глянец ужасно непрактичный и маркий, на нем остаются отпечатки от самых чистых рук, а замшевых перчаток в комплекте не было. Сенсорные кнопки — это стильно и модно, что удивительно работают довольно хорошо, я почему то до знакомства с ними был плохого мнения о таких штуках, хотя как вся эта красота будет работать в мороз и в перчатках еще неясно.

    Следующим минусом для меня является кнопка включения/выключения. Картинка-завлекалка Она очень маленькая и сделана вровень с копусом, возможно это и не плохо — не будет случайно нажиматься. Но вот место ее расположения выбрано самым отвратительным образом — она не сверху как на большинстве электронных гаджетов такого формата, и к тому же даже если знаешь где она находится, нащупать ее довольно проблематично — она ж «вровень выпирает» (с).

    Еще одно замечательное инженерное решение — слот mini-SD, в который на заводе не догадались закрыть какой нибудь прорезиненной заглушкой, ну или на крайний случай «муляжом» карты памяти. В чем причина такой экономии мне не ясно, но зато я знаю, что без этой простоцкой детальки в слот в течении пары месяцев насыпется куча пыли и грязи, что не самым лучшим образом скажется на его работе. Хотя я возможно и придираюсь, и маркетологи Тошибы посчитали, что сейчас при нынешней цене на карты памяти они есть у всех, и поэтому проблемы никакой и нет.

    Ну и последней какой Тошибы будем считать некачественную подсветку передних сенсорных клавиш. Подсветка сенсорных кнопок Легко заметить, что сквозь корпус просвечивают светодиоды подсветки и портят внешний вид коммуникатора.

    Кстати через несколько часов пользования данным девайсом чувство дорогой и стильной вещи в руках у меня напрочь пропало, и стало казаться что держишь в руках какую то дешевую детскую игрушку, а не современный компьютер. Работать конечно он от этого хуже не стал, но себе я такой коммуникатор ни за что бы не купил.

    Ну и в заключении, кратко Pros & Contras.

    Достоинства:

  • Емкая батарея
  • Быстрый GPS
  • Хороший и мощный Wi-fi приемник
  • Наличие в комплекте программ от Spb
  • Автокомплект
  • Полная поддержка 3G
  • Недостатки:

  • Довольно тихий динамик
  • Ужасный стилус
  • Неудобная «неинтуитивная» кнопка включения
  • Глянец передней панели
  • Отсутствие чехла в комплекте
  • Неудачная подсветка сенсорных кнопок
  • Отсутствие заглушки на карту памяти
  • Popularity: 3%

    9 мая я почти весь день прогуливался по городу. Смотрел на людей и иногда фотографировал. Вот несколько фотографий. [More]

    Popularity: 3%

    Как я Вас понимаю …

    By on Апрель 22, 2010

    Цитата с баша. Истина да и только. Не могу пройти мимо.

    для долбоебов и романтиков )))… вы хоть знаете шо такое свадьба ?? [More]

    Popularity: 1%

    Sata vs Sas. Минитест

    By on Апрель 22, 2010

    Теперь я точно знаю, зачем люди покупают дорогие Sas диски вместо «почти таких же», но недорогих и вместительных Sata.

    Чтобы увидеть различия в натуре, так сказать, скачал я HD Tune Pro 4.01. И провел мини-тестик, возможно он и не совсем корректный, но с IOMeter мне что то возится совсем не хотелось. Дисковая подсистема моих 2-х серверов:

    Пациент №1:

  • Рейд-контроллер Intel SRCS16
  • 4 SATA HDD Samsung/WD 120/320 Гб
  • RAID-5 (размер каждого диска принимается равным минимальному размеру диска, входящего в массив)
  • Вот графики производительности из программы
    SRCS16
    SRCS16

    Пациент №2:

  • Рейд-контроллер LSI 9260-4i
  • 4 SAS HDD SEAGATE 147 Гб
  • RAID-5
  • Вот графики для второго сервера
    LSI
    LSI

    Как видно, результат отличается разительно. Тест конечно не является корректным, так как во первых оба сервера были в работе, хотя №2 был более загружен как мне кажется, а во вторых на втором сервере испытания проходили не на чистом железе, а в виртуальной машине (на этом же сервере параллельно было запущено еще 2 виртуальные машины). Т.е. при испытании как положено, отрыв бы мог получиться еще более впечатляющим. Ну и контроллеры вносят конечно свою долю, особенно учитывая, что мой интел довольно старый и тормознутый сам по себе.

    Popularity: 2%

    Изучая на досуге программирование под Android я столкнулся с тем, что материалов на русском языке практически нет. Поэтому я решил сделать перевод статьи, затрагивающий один из аспектов программирования, а именно — создание и заполнение таблицы данных на форме, причем таблица должна заполняться из нашей программы. Оригинал статьи можно глянуть здесь.

    —————————————

    В моем квесте по созданию “Taxman” — программы под Android, я столкнулся со следующими проблемами:

    Я хочу попросить, чтобы пользователь ввел свой годовой доход, после чего на экране в виде таблицы должен отобразится доход, после уплаты налогов, для всех канадских провинций. Ну а в будущем — для всех штатов США. Проблема заключалась в том, что нужно было создать разметку TableRow для каждой из канадских провинций в моем main.xml. Их насчитывается 13 штук, это не так уж много для копипаста, однако уже после второго копипаста меня начало мутить. Лично я считаю, что термина “copy & paste” вообще не должно быть в словаре программиста. Ну и не только это меня смущало, а и то, что в дальнейшем мне бы пришлось работать уже с пятьюдесятью штатами. Таким образом выходило, что я должен был найти способ создавать строки TableRow программно, внутри моей разметки TableLayout.

    Важным источником исходных кодов, а так же ответов по программированию для Android является http://www.anddev.org. Я уверен, что если вы сталкивались с программированием под Android, то вам знаком этот сайт. Для решения своей проблемы я нашел следующий пост: «Dynamically add rows to TableLayout». В комментариях к этому посту было описано, что возникают проблемы при попутках заставить это работать, но после того как я импортировал все нужные классы (android.widget.TableRow.LayoutParams — один из самых важных), всё заработало с первого раза. Я использовал подсказки Eclipse, чтобы найти все необходимые классы.

    Ниже приведен код из anddev.org, с моими изменениями для программы Taxman. Я слишком ленив, чтобы сделать полное описание по использованию этого кода.

    Вначале я установил константы вверху моего класса:

    
    public class Activity1 extends Activity
                    implements OnTouchListener{
    
        int PROVINCE_Alberta = 0;
        int PROVINCE_BC = 1;
        int PROVINCE_Manitoba = 2;
        int PROVINCE_NewBrunswick = 3;
        int PROVINCE_Newfoundland = 4;
        int PROVINCE_Northwest = 5;
        int PROVINCE_NovaScotia = 6;
        int PROVINCE_Nunavut = 7;
        int PROVINCE_Ontario = 8;
        int PROVINCE_PEI = 9;
        int PROVINCE_Quebec = 10;
        int PROVINCE_Saskatchewan = 11;
        int PROVINCE_Yukon = 12;
    
        int numProvinces = 13;
    

    На этот раз их 13, и должно быть еще 50 для Штатов … теоретически это можно сделать более красивым способом, используя что нибудь типа внешнего конфигурационного XML файла.

    Поэтому я вместо констант создал массив String, где будут размещены все эти провинции:

    
    String[] provinces = new String[numProvinces];
            provinces[PROVINCE_Alberta] = "Alberta";
            provinces[PROVINCE_BC] = "British Columbia";
            provinces[PROVINCE_Manitoba] = "Manitoba";
            provinces[PROVINCE_NewBrunswick] = "New Brunswick";
            provinces[PROVINCE_Newfoundland] =
                            "Newfoundland and Labrador";
            provinces[PROVINCE_Northwest] =
                           "Northwest Territories";
            provinces[PROVINCE_NovaScotia] = "Nova Scotia";
            provinces[PROVINCE_Nunavut] = "Nunavut";
            provinces[PROVINCE_Ontario] = "Ontario";
            provinces[PROVINCE_PEI] = "Prince Edward Island";
            provinces[PROVINCE_Quebec] = "Quebec";
            provinces[PROVINCE_Saskatchewan] =
                          "Saskatchewan";
            provinces[PROVINCE_Yukon] =  "Yukon";
    

    И дальше я создаю TableRow для каждого элемента массива провинций:

    
    // Get the TableLayout
    TableLayout tl = (TableLayout)
            findViewById(R.id.maintable);
    
    // Go through each item in the array
    for (int current = 0; current < numProvinces; current++)
    {
      // Create a TableRow and give it an ID
      TableRow tr = new TableRow(this);
      tr.setId(100+current);
      tr.setLayoutParams(new LayoutParams(
      LayoutParams.FILL_PARENT,
      LayoutParams.WRAP_CONTENT));   
    
      // Create a TextView to house the name of the province
      TextView labelTV = new TextView(this);
      labelTV.setId(200+current);
      labelTV.setText(provinces[current]);
      labelTV.setTextColor(Color.BLACK);
      labelTV.setLayoutParams(new LayoutParams(
      LayoutParams.FILL_PARENT,
      LayoutParams.WRAP_CONTENT));
      tr.addView(labelTV);
    
      // Create a TextView to house the value
      // of the after-tax income
      TextView valueTV = new TextView(this);
      valueTV.setId(current);
      valueTV.setText("$0");
      valueTV.setTextColor(Color.BLACK);
      valueTV.setLayoutParams(new LayoutParams(
      LayoutParams.FILL_PARENT,
       LayoutParams.WRAP_CONTENT));
      tr.addView(valueTV);
    
      // Add the TableRow to the TableLayout
      tl.addView(tr, new TableLayout.LayoutParams(
                        LayoutParams.FILL_PARENT,
                        LayoutParams.WRAP_CONTENT));
    }
    

    В файле main.xml описана следующая структура TableLayout (в начальном и конечном тегах TableLayout убран знак "<" из за неправильного форматирования в моем блоге, нужно их добавить в рабочий файл main.xml, прим. моё):

    
            TableLayout xmlns:android=
            "http://schemas.android.com/apk/res/android"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:stretchColumns="0,1"
                    android:id="@+id/maintable" >
            /TableLayout>
    

    Ну и в конце, вот что мы увидим когда запустим наше приложение:

    android tablerow

    Popularity: 21%

    Крызис блин

    By on Март 17, 2010

    Прочитал тут занятную статистику по Великобритании, оказывается у них ежедневно происходят следующие события:

  • 128 семей выселяют из домов за невыплаты по ипотеке
  • 386 человек объявляют о своей неплатежеспособности
  • 1400 человек теряют работу
  • Суды принимают 2000 постановлений на выплату потребительских долгов
  • А в нашем государстве всё таки как говорила Тётя. Юля — «Крызы немае». Потому, что у нас никого по закону выселить низзя, да и залоговое имущество не отбирается и не распродается. То есть получается, что банкам пока выгодно терпеть «убытки» и выпрашивать у нацбанка денег на восстановление (кстати неплохой бизнес — взять пару миллиардов на рекапитализацию под 8-10% годовых, дать отката нацбанку процентов 5, и вложить эти деньги в государственные же бумаги, но с доходностью 25-28%).

    Popularity: 1%

    Вот это я понимаю реклама к наступающему восьмому марта. Очень порадовала, совсем не похожа на то «унылое говно» © которое постоянно показывают по нашему телевидению.

    Popularity: 2%