• Странный рендеринг шрифтов в IE9 beta

    z0rc
    @z0rc
    Так работает аппаратное ускорение через DirectWrite и растеризатор шрифтов в WPF. Повлиять на него возможности нет, он всегда будет отдавать другие метрики, чем GDI, по причине того, что используется разные методы сглаживания и хинтинга. Единственное решение — подстраиваться, делать вёрстку «более резиновой», не привязываясь к метрикам шрифтов (точнее длинам строк).

    PS Также само сайт будет выглядеть в Firefox 4 с включённым ускорением через DirectWrite.
    Ответ написан
    2 комментария
  • Можно ли в Mono Develop для Mac писать GUI приложения под него же на C#?

    DevMan
    @DevMan
    Можно.
    Ставите себе MonoMac и кодите.
    GUI можно рисовать в маковском родном Interface Builder'e.
    Ответ написан
    2 комментария
  • Как узнать битрэйт, не скачивая mp3?

    Читаете только несколько байт заголовка трека. По этим данным определяете битрейт.
    Ответ написан
    Комментировать
  • SVN: как сравнить рабочую копию с репозиторием?

    pdx
    @pdx Автор вопроса
    Вот ещё решение:
    svn log -v -rX:Y.
    :)
    Ответ написан
    2 комментария
  • Система оповещения системного администратора?

    diarworld
    @diarworld
    Знакомая проблема.
    … ибо использоваться будет в больнице, соответственно персонал не особо ладит с компютерами.

    Решения типа orts или багтрекера не подойдут 90% таких пользователей (пользователи просто не осилят такую систему). В свое время, я решил данную проблему простым vbs скриптом:

    Set wshshell = CreateObject("WScript.Shell")
    computer = WshShell.ExpandEnvironmentStrings("%computername%")
    Input = InputBox ("Опишите проблему и нажмите ОК." & Chr(10) & "Если хотите отказаться, жмите Отмена " & Chr(10) & Chr(10) & "Телефон системного администратора "& Chr(10) & ".... или ....", "Создать заявку", "Сюда введите краткую причину вызова")
    If Input = "" then WScript.Quit 0
    check = MsgBox ("Вы точно хотите отправить эту информацию?", 4+48 ,"Внимание!")
    If check = 7 Then WScript.Quit 0
    Dim fso1
    Set fso1 = WScript.CreateObject("Scripting.FileSystemObject")
    Dim objADSystemInfo
    Dim objUser
    Set objADSystemInfo = CreateObject("ADSystemInfo")
    Set objUser = GetObject("LDAP://" & objADSystemInfo.UserName)

    If Fso1.FileExists ("\\server\Zayavki.txt") Then

    Set txtStreamOut = fso1.OpenTextFile("\\server\Zayavki.txt",8,True)
    With objUser

    txtStreamOut.WriteLine computer & " - " & .displayName & " - " & Input & " - " & Now
    End With

    Else

    Set MyFile = fso1.CreateTextFile("\\server\Zayavki.txt")
    With objUser

    MyFile.WriteLine computer & " - " & .displayName & " - " & Input & " - " & Now
    End With

    End If
    WshShell.run "net send " & "XXXXXX" & " Заявка!"
    MsgBox "Ваша заявка отпрвлена!", 0+65536 ,"Congratulations!"
    Set oShell = Nothing
    Set wshshell = Nothing
    Set objADSystemInfo = Nothing
    Set objUser = Nothing


    Необходимо такой скрипт раскидать пользователям по рабочим столам, с красивой иконкой и названием. При открытии скрипта открывается MsgBox с предложением ввести описание проблемы, после подтверждения текст записывается в файл с именем пользователя, компьютера и временем заявки, отправляется NetSend админу, и выдается окошко об успехе. Админ смотрит файл и связывается с пользователем. Работает только в домене, необходимо установить в AD на автозапуск службу сообщений Messenger (для отправки net send), //server/Zayavki.txt необходимо заменить на свой путь к файл серверу (общей папке), XXXXXX на имя компьютера админа. Скрипт не отработает конечно, если будут неполадки с сетью.

    Надеюсь, помог Вам:)
    Ответ написан
    2 комментария
  • Не могу опубликовать ни одной статьи из-за кармы

    eternals
    @eternals
    Всё просто. Если статья ваша не очень, то сэкономьте своё время, а если статья ваша хорошая, то здесь она никому не нужна.
    Точно так же ваша карма будет показывать степень вашей хомячковости: если вы специалист в своей области, то вас заминусуют, а если вы обыкновенный школьник, то заплюсуют.
    При положительном рейтинге, ваша карма вполне может быть сугубо отрицательной.

    Таковы здесь правила.

    Вы не видите, кто вас минусует. И получаете минус, например, за то что хвалите windows. А плюс получаете только за очень хороший совет или за обыкновенный популизм.

    Если хотите набрать положительную карму — аккуратно, чётко, подробно отвечайте на вопросы в этом разделе. Я, например, так сходу за вечер взял плюс 2. И затем не комментируйте ничего лишнего. Тогда карма не упадёт.
    Так-то.
    Ответ написан
    6 комментариев
  • Поиск по зашифрованной информации. Как реализовать?

    eternals
    @eternals
    Используйте Microsoft SQL Server 2008 с включенным шифрованием.
    Ответ написан
    2 комментария
  • Совместное использование IP адреса на двух серверах

    @Bodik Автор вопроса
    А все таки оказалось быстрее и проще написать самому. Расскажу подробней, ибо вещь полезная. Я не рассписываю как на разных системах, но должно работать без проблем на любых redhat'о подобных.

    ТЗ:
    два сервера с главными айпишками 10.10.10.20 и 10.10.10.30
    необходимая третья айпишка 10.10.10.40, которая и будет подниматься на живом сервере если другой упал


    Пусть 20 сервер будет главным, прописываем ему в /etc/rc.local поднимание айпишки и риквест очистить кеш::
    ifconfig eth0:1 10.10.10.40 netmask 255.255.255.0
    arping -c 1 -s 10.10.10.40 10.10.10.1


    Другой — 30 сервер будет на поддержке, если вдруг первый откажет. На нем создаем скрипт /usr/local/sbin/setupip, внутри:

    #!/bin/bash
    MASTERHOST="10.10.10.20"
    IP1="10.10.10.40"
    MASK1="255.255.255.0"
    INERFACE1="eth0:1"
    GATE1="10.10.10.1"
    
    sleep 10
    while true; do
    count=$(ping -c 1 $MASTERHOST | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
    localip=$(ifconfig | grep "$IP1 " | wc -l)
    if [ $count -eq 0 ]; then
            if [ $localip -eq 0 ]; then
                    #if IP is not set - do add it, send ARP cache clear
                    logger "setupip :: Host $MASTERHOST is down at $(date); Binding up $IP1"
                    ifconfig $INERFACE1 $IP1 netmask $MASK1
                    arping -c 1 -s $IP1 $GATE1
            fi
    else
            if [ $localip -gt 0 ]; then
                    logger "setupip :: Host $MASTERHOST is UP at $(date); Shutting down $IP1"
                    ifconfig $INERFACE1 down
            fi
    fi
    
    sleep 10
    done
    


    Делаем его исполняемым, засовываем скрипт в /etc/rc.local, для запуска при старте:
    /usr/local/sbin/setupip &


    Reboot. Все готово.

    В результате имеем:
    • каждые 10 секунд второй сервер пингует первый
    • если первый лежит — второй поднимает у себя нужную IP, чистит ARP кеш, и делает запись в syslog (/var/log/messages)
    • если первый поднимается, он запускает у себя IP и чистить ARP кеш от себя и принимает все риквесты на себя
    • второй видит что первый поднялся, и ложит IP у себя


    Все тесты закончились хорошо. Переменные должны быть интуитивно понятны.
    Думаю кому-то этот скрипт пригодиться.
    Ответ написан
    1 комментарий
  • Что потребляет больше энергии на iPad/iPhone - 3G или Wi-Fi?

    LProf
    @LProf
    @Lord_Phoenix: ресурс 4PDA

    При достаточно хорошем покрытии вашего города сетьтю 3G (постоянно 4-5 делений), предпочтительнее использовать её взамен EDGE, так как EDGE потребляет в среднем на 30% больше чем 3G (300 мА против 210 мА) и сравним с потреблением Wi-Fi (до 330 мА) (данные приведены для уверенного приёма обоих сетей при полной загрузке — скачивание файла к примеру). К тому же меньший итоговый расход энергии получается из-за меньшего времени использования сети 3G за счёт более высокой скорости передачи данных. Если же покрытие 3G не устойчивое, и местами отсутствует вовсе (ситуация в Москве на данный момент), лучше будет отключить использование сети 3G, так как при нахождении в зоне 2G ваш аппарат будет постоянно сканировать лишний диапазон частот на наличие 3G, тратя дополнительно драгоценную энергию.
    Ответ написан
    3 комментария
  • CMS Plone 4 - системные требования и масштабирование?

    @differentlocal
    200мб не хватит даже для нормального функционирования LAMP в скоростной (не low-load, на случай если здесь появится :)) конфигурации. Особенно если это OVZ.
    Ответ написан
    3 комментария
  • Есть ли смысл писать под AutoCAD?

    dotneter
    @dotneter
    Вроде же у него есть .net api, а там хоть С#, хоть ironpython.
    Ответ написан
    7 комментариев