среда, 20 июля 2011 г.
суббота, 16 июля 2011 г.
Chiba sensei kote
На первом видео, например, идет обучение, как растащить соперника и заставить его подставиться под коте или под мен. Но цепляет (и не только меня) не столько это, сколько совершенно шикарные коте:
Собственно всё это время я периодически просматривал видео по кадрам и пытался понять - чем же конкретно эти коте отличаются от того, что я вижу на тренировках и на видео со своим участием. Не, понятно, что всем :) , но для работы хотелось бы все-таки что-то более конкретного.
Понятно, что быстрые и точные, но у нас на тренировках, или на последнем Кубке Урала тоже проскакивали быстрые и точные коте, но вот этого ощущения шикарности почему-то при этом не возникало :(.
Пока более-менее выцепил только один момент - наши коте идут четко сверху вниз (ну или вбок, если удар идет не по вертикали), здесь же присутствует явное движение синая вперед в момент удара и даже сразу после попадания.
пятница, 15 июля 2011 г.
Как добраться до острова Веры

upd - Как добраться до острова Веры - 2012
Джереми Робинсон. "Кронос"
Ни смысла, ни сюжета, ни характеров. Т.е. автор наверно считал, что если в книге будут библейские мифы, обретение веры в бога, сумасшедший миллионер, крутой "морской котик" с верной подругой и экскурсы в палеонтологию и океанографию, то автоматом получится очередной бестселлер а-ля "Код да Винчи". Увы, получилась пустышка.
четверг, 14 июля 2011 г.
Сокрытое в листве
Подобными сведениями нужно дорожить. ©
среда, 13 июля 2011 г.
Пара-тройка способов поставить Windows Media Player Plugin на сервер

Однако, если попробовать это сделать на windows-сервере (2003 или 2008), инсталлятор плагина скажет: "Package does not support server operating systems":

Для начала нужно открыть закаченный wmpfirefoxplugin.exe архиватором, например RAR-ом, и извлечь из него все файлы, в том числе ffplugin.msi.
Дальше самые умные берут Orca (редактор MSI), открывают ffplugin.msi и удаляют из него (Drop Row) "лишнюю" проверку:

После этого можно спокойно запускать установку измененного пакета:
msiexec /I ffplugin.msi
Люди попроще вместо Orca открывают в архиваторе уже ffplugin.msi, извлекают оттуда NPMSWMPdll, переименовывают в np-mswmp.dll и кладут ее в C:\Program Files\Mozilla Firefox\plugins.Самые простые берут C:\Program Files\Mozilla Firefox\plugins\np-mswmp.dll на какой-нибудь машине с XP и копируют к себе.
Результат один - работающий плейер:
воскресенье, 10 июля 2011 г.
Вот что получается...

Пора бы уже Цукербергу пошевелить мозгой и переобозвать этот Like во что-то типа Это важно, Не пропустите или там Всем,всем,всем
Как порезать mp3 на части
Вообщем, нужна была утилитка, которая позволяла бы одним ударом порубить mp3 файл на части нужной длины. И таки удалось выцепить нужное - mp3splt - бесплатная, с исходниками, есть варианты для нескольких наиболее распространенных ОС.
Желаемая нирвана теперь достигается одной командой:
mp3splt.exe -t 5.00 input.mp3
всё, рядом с input.mp3 лежит нарезка на 5-минутные кусочки:input_000m_00s__005m_00s.mp3
input_005m_00s__010m_00s.mp3
input_010m_00s__015m_00s.mp3
input_015m_00s__020m_00s.mp3
input_020m_00s__025m_00s.mp3
input_025m_00s__030m_00s.mp3
input_030m_00s__035m_00s.mp3
input_035m_00s__040m_00s.mp3
input_040m_00s__045m_00s.mp3
input_045m_00s__050m_00s.mp3
input_050m_00s__055m_00s.mp3
input_055m_00s__060m_00s.mp3
input_060m_00s__065m_00s.mp3
input_065m_00s__070m_00s.mp3
input_070m_00s__075m_00s.mp3
input_075m_00s__080m_00s.mp3
input_080m_00s__085m_00s.mp3
input_085m_00s__090m_00s.mp3
input_090m_00s__095m_00s.mp3
input_095m_00s__100m_00s.mp3
input_100m_00s__104m_03s_63h.mp3
Утилитка, кстати, умеет резать еще всяко по-разному - с ручным указанием нужного интервала, по данным из CDDB или из .cue-файлов. Есть также неконсольный вариант:
суббота, 9 июля 2011 г.
Создание сайта на IIS из инсталлятора
Несколько общих переменных и констант:
var
WebSiteNamePage: TInputQueryWizardPage;
DispatchWebSiteName: string;
const
IISServerName = 'localhost';
IISServerNumber = '1';
В самом начале убеждаемся, что все необходимое на месте:function InitializeSetup(): Boolean;
begin
// Проверка, что установлено все необходимое ПО
result := IsDotNet35Installed() and IsSQLServerInstalled() and IsIISInstalled();
end;
// Проверка, что установлен Microsoft IIS
function IsIISInstalled() : Boolean;
var
IIS: Variant;
begin
try
IIS := CreateOleObject('IISNamespace');
result:=true;
except
result:=false;
MsgBox( CustomMessage('InstallIIS'), mbError, MB_OK );
end;
end;
Собственно создание сайта у меня происходит в PostInstall(), когда уже скопированы все файлы сайта:// Действия после установки
procedure PostInstall();
begin
// Создать виртуальный каталог IIS для сайта
CreateDispatchVirtualDir();
end;
// Создание сайта на основе каталога со скопированными файлами
function CreateDispatchVirtualDir() : Boolean;
var
IIS, WebSite, WebServer, WebRoot, VDir: Variant;
ErrorCode: Integer;
begin
result:=true;
// подключение к IIS
try
IIS := CreateOleObject('IISNamespace');
except
result:=false;
MsgBox( CustomMessage('InstallIIS'), mbError, MB_OK );
end;
if result then
begin
try
// берем рычаги
DispatchWebSiteName := WebSiteNamePage.Values[0];
WebSite := IIS.GetObject('IIsWebService', IISServerName + '/w3svc');
WebServer := WebSite.GetObject('IIsWebServer', IISServerNumber);
WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root');
// удаляем виртуальный каталог, который собираемся создавать
try
WebRoot.Delete('IIsWebVirtualDir', DispatchWebSiteName);
// сохранить изменения
WebRoot.SetInfo();
except
end;
// создаем виртуальный каталог
VDir := WebRoot.Create('IIsWebVirtualDir', DispatchWebSiteName);
VDir.AccessRead := True;
VDir.AccessScript:=true;
VDir.DefaultDoc:='default.aspx';
VDir.AppFriendlyName := DispatchWebSiteName;
VDir.Path := ExpandConstant('{app}');
VDir.AppCreate(True);
// сохранить изменения
VDir.SetInfo();
// открываем сайт в браузере
ShellExec( 'open', 'http://' + IISServerName + '/' + DispatchWebSiteName + '/', '', '', SW_SHOW, ewNoWait, ErrorCode );
result:=true;
except
MsgBox( CustomMessage('VirtualDirNotInstalled'), mbError, MB_OK );
result:=false;
end;
end;
end;
Ну и удаление при деинсталляции:// Действия после деинсталляции
procedure PostUninstall();
begin
DeleteDispatchVirtualDir();
end;
// Удаление виртуального каталога
function DeleteDispatchVirtualDir() : Boolean;
var
IIS, WebSite, WebServer, WebRoot: Variant;
begin
result:=true;
// подключение к IIS
try
IIS := CreateOleObject('IISNamespace');
except
result:=false;
end;
if result then
begin
try
// берем рычаги
WebSite := IIS.GetObject('IIsWebService', IISServerName + '/w3svc');
WebServer := WebSite.GetObject('IIsWebServer', IISServerNumber);
WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root');
// удаляем виртуальный каталог
try
WebRoot.Delete('IIsWebVirtualDir', DispatchWebSiteName);
// сохранить изменения
WebRoot.SetInfo();
except
end;
result:=true;
except
result:=false;
end;
end;
end;
Скрипт проверен на windows 2003 и 2008. Надо только не забывать в 2008-й при настройке ролей сервера дополнительно инсталлировать компоненты, обеспечивающие совместимость со средствами управления IIS6:
суббота, 2 июля 2011 г.
«Родовой кинжал»
Александра Руда «Родовой кинжал»
Обычно, когда говорят об отношениях писателя и книги, употребляют выражение "как ребенок", типа писатель с ней носится 9 месяцев или 2 года, потом книгу издают и начинается у нее самостоятельная жизнь, уже от писателя не зависящая.
Так вот. "Родовой кинжал", к сожалению, явная жертва аборта. Не знаю уж кто там был инициатором того, чтоб порубить младенчика на куски и начать извлекать частями, мама-писательница или издательство-акушер, но факт на лицо - под обложкой "Родового кинжала" несколько первых глав будущей книги, в которых разве что обозначены характеры героев и идет завязка некоего сюжета. Даже пресловутый родовой кинжал, давший название книге, упоминается только в паре предложений (да и то не факт, что это о нём, т.к. реально в сюжете никакие кинжалы не участвуют вообще).
Вообщем, если попытаться передать впечатление после прочтения одним словом, то слово это - недоумение.
А уж если вспомнить известное письмо писателей против пиратов, подписанное автором этой книги... Что тут скажешь... Продолжайте в том же духе и ваши бумажные книги перестанут покупать вообще, только вот кто тут кому злобный буратино?