アイネ・クライネ・避難勧告
o4 gr8d8gr8d8g8d8g8b8o5d4r4o4g8d8g8b8o5d4r4;
ソースはこれ https://www.facebook.com/jokefake/photos/a.361766817190947.88875.361523163881979/816838355017122/
やっぱり自前のサイトのほうが落ち着く
ロックイン怖いです。
WordPress3でblogを簡単に量産できるようになったので。
http://dev.trick-with.net/
_focusrect(as2)やstageFocusRect(as3)だけではTabキーは無効になっていない
黄色い矩形が消えているだけで、フォーカス移動は発生している。
http://wonderfl.net/c/8m4M
フォーカス移動を消すにはTabキーへのイベントハンドラを書く。
IE6と7以降でIEキャッシュの命名規則が違う
http://127.0.0.1/ のようなURLにキャッシュ可能な文書を置いてアクセスし、Temporary Internet Files に生成されるファイル名を確認すると、
なんて微妙な仕様変更。
SDカードから失われた動画を復旧する
ffmpeg で -i オプションにワイルドカードを使ったらSDカード内のAVIがごっそり0バイトになって焦った。
ここは本気を出さねばならない。
selfImageで、メディアまるごとのバイナリイメージを取って、以下のコードを実行し、「"RIFF"から始まるファイル」に分割。なんせ元のファイルサイズが失われてるのでほんとはきちんとRIFFフォーマットを解析しなきゃならないのだが、面倒なので。
あとは、出来上がった「後ろにおまけのついた動画ファイル」を無理やり動画コンバータに放り込んで変換成功。
ふぅ、冷汗かいた。
int _tmain(int argc, _TCHAR* argv[]) { char buf[BUF_SIZE]; FILE* fp; ::fopen_s(&fp, "sd_card.img", "rb"); FILE* fOut=NULL; int count=0; while(!::feof(fp)){ ::fread(buf, 1, BUF_SIZE, fp); if(fOut)::fwrite(buf, 1, BUF_SIZE,fOut); long cur=0; while(cur<BUF_SIZE){ const char* pos=(const char*)::memchr(buf+cur, 'R', BUF_SIZE-cur); if(!pos){ break; } if(::memcmp(pos, "RIFF", 4)==0){ if(fOut)::fclose(fOut); char fname[20]; ::sprintf(fname, "%d.avi", count); fOut=::fopen(fname, "wb"); ::fwrite(pos, 1, BUF_SIZE-(pos-buf), fOut); count++; } cur=pos-buf+1; } } if(fOut)::fclose(fOut); ::fclose(fp); return 0; }
substとショートカットの怪しい関係
- substでドライブ作る
- 出来たドライブへのショートカットを作る
- subst /dでドライブを消す
- さっき作ったショートカットのリンク先がいつの間にか変わる。
きもーい。
PathMatchSpecの挙動
Windows上でワイルドカードを処理するAPIがPathMatchSpecである。
http://msdn.microsoft.com/en-us/library/bb773727(VS.85).aspx
しかしここに載っているサンプルがあまりにもセンスが悪い。
ということでテストコードを書いた。コードは後述。結果は以下。
"somepath.html" , "somepath?html" => true "somepath.html" , "" => true "somepath.html" , "(null)" => false "" , "*" => true "" , "a" => false "somepath" , "*." => false "somepath" , "*.*" => true "hoge\fuga.html" , "hoge*" => true "hoge\fuga.html" , "hoge*html" => true "hoge\fuga.html" , "hoge\*" => true
コードはこんな。
続きを読む