2013年12月3日火曜日

CentOS 6.4 USB外付けHDDをext4でフォーマット・パーテイション作成

コマンドではなくGUI上でやりました。

■フォーマット
  1. HDDを本体に接続
  2. アプリケーション→システムツール→ディスク・ユーティリティ
  3. 「周辺機器」にHDDが表示されているのを確認
  4. 「ドライブをフォーマット」を選択
  5. スキームは「マスターブートレコード」を選択して「フォーマット」をクリック
マスターブートレコードは容量が2TB以下の場合によく使用されるスキーム。
2TB以上の場合GUIDが使われることが多いようです。

フォーマット後、未割り当て領域にパーティションを作成。

■パーティション作成
  1. パーティションを作成
  2. タイプは本体に合わせてExt4を選択
  3. ボリューム名を適当につける。ここでは「hdd」とした。ラベルはあとで変更可能。
  4. しばらく待つ。
  5. ボリュームをマウントする
これでデスクトップにHDDへのリンクが生成されます。

勉強させていただきました
Ubuntu ディスクユーティリティ その4 - ドライブをフォーマットする
http://kledgeb.blogspot.jp/2012/10/ubuntu-4.html

2013年9月4日水曜日

windows7 ネットワーク接続を有効・無効にする

ローカルエリア接続とか、ネットワーク接続を無効にしてから有効にしたいときがたまにあるんですけど、何回やってもどこにあるのか探してしまうのでメモです。
ネットが繋がらない時、ネットワークを一旦無効にして有効にすると案外回復したりします。
windows 7 には以前まであった「修復」はありませんが、同等の動きになるようですね。

コントロールパネル
→ネットワークと共有センター
→アダプターの設定の変更(左メニュー)
→ローカルエリア接続を右クリック
→「無効にする」を選択のち、「有効にする」

無効にするだけなら
コントロールパネル
→ネットワークと共有センター
→ローカルエリア接続をクリック
→ローカルエリア接続の状態ダイアログで「無効にする」ボタンをクリックします。

ネットワーク診断じゃ特定できないことも多いので。
IPアドレスの再取得ならipconfig/renewでもOKです。
こちらの方が早い気も。

2013年8月20日火曜日

パワーポイントの図形をピクセルでサイズ指定して保存

非デザイナーの強い味方、パワーポイント。
パワーポイントで作った図形をピクセルでサイズ指定して保存するメモです。

1.パワーポイント上で図形描画などで素材を作成・編集する。
2.サイズを設定する。(重要)
パワーポイントはサイズがピクセル指定でないため、解像度(dpi)に合わせて出力したい図形サイズに調整する。
オフィス2007からは作成した画像のdpiは自動的に220dpiになる。
(設定変更も可能。)
1インチは25.4mmのため、1px算出の計算式は以下のようになる。
1px = 25.4mm / dpi
220dpiの場合、1ピクセルは25.4/220=0.11545(ミリ)となる。
算出した1ピクセルあたりのミリに、設定するピクセル数をかける。
10pxの場合は1.15454...ミリになり、センチでは0.11545になる。
これを画像のサイズに設定し、「図として保存」すれば、ほぼ希望どおりのピクセル数で保存される。

【背景色を透過する】
一旦図として保存したものを、再びパワーポイントに張り付け、
「図ツール」→「書式」→「色の変更」→「透明色を指定」で透過する。

【ついでにPCの基本のDPIの調べ方】
Windows 7の場合:
コントロールパネル→ディスプレイ→カスタムDPI設定
96ピクセル/インチと書いてある場所がそう。
Windows XPの場合:
デスクトップで右クリックで画面のプロパティ→設定→詳細設定の全般タブのDPI設定。

2013年8月7日水曜日

vba:止まらない「コードの実行が中断されました」

マクロ実行中、実行中の処理を途中で止めたいとき、Ctrl+Breakは常套手段です。
ですがこの打ちどころが悪いと、次回実行時に「コードの実行が中断されました」というデバッグがプログラムの最中に何度も起動するようになってしまいます。
前回までは普通に実行できていたのに、なぜ?という場所で頻発。
いちいち「継続」って押さないと次に進んでくれない・・・。

このエントリーが詳しいです。
ExcelVBAにおける不可解な「コードの実行が中断されました」
http://d.hatena.ne.jp/rizenback000/20110926

私の環境はWin7, Office2007ですが、やっぱりこれに悩まされました。
こういう状態になってしまったマクロを削除して、自分でちまちま取っていたバックアップをリネームして起動しても、なんと同じことになります。粘着質にもほどがある・・・。

有効そうなのが「Ctrlを押しながら、デバッグリセットのボタンを押下」ですが、私はこれもダメでした。
打つ手なしで途方にくれていましたが、OSを再起動したら、普通に動くようになりました・・・。

2013年7月31日水曜日

actionscript:本日の日付(年月日)の生成

【備忘録】

yyyy/mm/ddの日付を生成するには、Dateオブジェクトを使ってこう書く。

var dateObj:Date = new Date();
trace(String(dateObj.getFullYear() + "/" + Number(dateObj.getMonth() + 1) + "/" + dateObj.getDate()));
→2013/7/31

よくあるパターンで、getMonthは0~11の月を取得するため、1月→0、12月→11になります。
現在の月を求めるには戻り値に+1します。

【参考】ActionScript裏ヘルプ
http://actionscript.sitemix.jp/as3.php?dir=system&file=002

2013年7月16日火曜日

eps画像をベクター形式のままグレースケールに変換

カラーのeps画像をベクター形式を保ったままグレースケールのeps画像に変換するコマンドです。
グレースケール変換はImageMagickでも可能なのですが、ベクター画像がラスター形式になってしまいます。
少し調べてみたんですが、現時点では不可避のようです。

というわけで今回はghostscriptを使いました。
実はepsからepsの変換でグレースケールはうまくいかず、ghostscriptで、ベクターを保ったまま【PDF】にグレースケール変換し、それをもう一度EPSにコンバートすることで、EPS→EPSのモノクロ変換を実現しました。

環境がwindowsなのでコマンドがgswin32です。
Linuxやその他の方は適宜読み換えて下さい。

1. グレースケールのPDFへ変換
gswin32 -sOutputFile=sample.pdf -sDEVICE=pdfwrite -sColorConversionStrategy=Gray -dProcessColorModel=/DeviceGray -dCompatibilityLevel=1.4 -dNOPAUSE -dBATCH -sEPSCrop sample.eps

2. 変換したPDFをEPSに変換
gswin32 -sOutputFile=sample2.eps -sDEVICE=epswrite sample.pdf

ただ、これだと全体的に明度が上がってしまってもともと黒だった線が淡くなってしまいます。
引き続き回避方法を探します・・・もしご存知の方、ご教示頂けると幸いです。


2013年7月9日火曜日

Adobe Flash Builder:起動しない

CCの開始やらなんやらでAdobeのライセンス回りが混乱気味です。

そんな中、Master Collection CS6に含まれていた Flash Builder が、突然起動しなくなりました。
PhotoshopやFlashなんかは全然問題なく起動したのに、Flash Builderだけアウトでした。
今回は平気でしたがAcrobatなんかでそういうことがあるみたいですね。

起動するとスプラッシュスクリーンまでは出るんですけど、その画面のままワークベンチとか初期化とかの進行状況が一切表示されず、そのままふっと消えるように落ちます。
アンインストールからのインストールを行なってもだめでした。
まるで評価版を使っている時のような振る舞い・・・あれっ?
そういえばインストールから30日経ってる。でもまさか、これライセンス版だよ?悶々とする。

しかし結果としては、以下のサイトを参考に、Master CollectionのPhotoshop(起動できるアプリならなんでもいいです)を起動してヘルプからライセンス認証を解除し、再び起動してライセンス認証を行ったところ、再び利用出来るようになりました。

C. ライセンス認証の解除と再認証
http://helpx.adobe.com/jp/acrobat/kb/cq12121856.html

これ一ヶ月ごとにやらないとならない・・・の・・・?

2013年7月5日金曜日

Flash Builder 4が重いので、視覚効果を切った。

自社でもAdobe Creative Cloudを導入しました。
その関連で、Flex 3 ProfessionalのかわりにFlash Builder 4.6 を使うことになったんです。
環境はWindows7, メモリは4G。普通ですね。

それが

・・・重い・・・。

重い。とっても重い。

とにかくソースモードからデザインモードに切り替えるたびにカーソルが激しく震え、完全に切り替わるのに10秒くらい待たされるのです。
軽量化のためにとFlexで使うメモリをいじったり、入力中に問題を報告のチェックを外してみたりしてみたんですが。

【参考サイト】
Flash Builderのメモリ
http://d.hatena.ne.jp/tukaharu/20110322/1300757321

Flash Builderが重いって?「入力中に問題を報告」のチェックを外すんだ。
http://d.hatena.ne.jp/MineAP/20110808/1312801372

やっぱりどうにも重い。半日も使っていると特定の動作でフリーズしてしまうようになる・・・。
そこでもう、ばっさり根本からいくことにしました。

Windows7の視覚設定をすべてオフにしてパフォーマンスを優先します。
これでFlash Builderの動作がかなり早くなります。

コントロールパネルからWindowsのデザインとパフォーマンスの調整
1.「コントロールパネル」を開く
2.「パフォーマンスの情報とツール」(大きいアイコン)→左メニュー
3.「詳細ツール」→「Windowsのデザインとパフォーマンスの調整」
ここで「パフォーマンスを優先」にするとチェックボックスが全部オフになって

Windows7が残念な見た目になるのと引き換えに、Flash Builderがそれなりに・・・というか、前に比べてかなり軽くなります。
「スクリーンフォントの縁を滑らかにする」だけチェックしておけばフォントも綺麗に表示されます。
今日は開発しかしない!って日にいいと思います。
それでも重いんですけどね。


ところで4.7ではデザインモードが無いそうです。

Flash Builder 4.7からは、デザインモードがないそうなんですが。
http://www.adobe.com/jp/products/flash-builder/faq.html

Flash Builder 4.7 デザインモード (教えてZiddyちゃん)
http://ziddy.japan.zdnet.com/qa8034068.html

別の意味で劇的な革命ですね。
あれが無かったらFB4.7を買う理由なんて欠片もないような気がするんですが・・・。
軽量化のためにデザインモードを捨てたんでしょうか。捨てるもの間違ってるような。
それとも代替機能があるんでしょうか。
なんでもいいからFlex3に戻りたい。(´;ω;`)ウッ…

2013年6月14日金曜日

VMware: vSphere ESXi 4.1 ゲストOSが起動できなくなる

 VMWareゲストOSを稼働させていると、突然動作が不安定になって起動出来なくなることがあります。
 以前vSphere ESXi上でゲストOS(RHELinux)を複数稼働させていたのですが、そのうち2つが同じ症状でクラッシュし、調査したところ原因はOSごとに割り当てあてたHDD容量が稼働時間の経過とともに不足してしまうことにありました。

■症状
 LinuxゲストOS使用中に動作が不安定になり、その後起動出来なくなる。
 OSを起動しても、途中でメンテナンスモードが立ち上がってしまう。

■エラー詳細
1. 起動時のエラー
 /dev/VolGroup00/LogVol00 contains a file system with errors. check forced.



 
2. メンテナンスモードが立ち上がる
 *** An error occurred during the file system check
 *** Dropping you to a shell; the system will reboot
 *** when you leave the shell.
 Give root password for maintenance

■原因
 OSを稼働させているうちにデータがHDに蓄積し、OSに割り当てた物理メモリが不足してしまう。
 メンテナンスモードにログインし、
 # df -k
 でハードディスクの容量をチェックして、使用率(Use%)が95%以上まで達していたら確実です。


■対応
 ゲストOSの物理メモリサイズを拡張する
 拡張したメモリをVMWareが動いているパーティションに割り当てる

■手順
1. ゲストOSのシャットダウン
 メンテナンスモードが表示された場合、一旦物理メモリサイズの拡張のため、ゲストOSをシャットダウンします。
 # shutdown -h now
 シャットダウンコマンドがきかない場合はクライアントツールで該当ゲストOSを右クリックし、電源→パワーオフを選択して「はい」をクリックし、強制的にパワーオフします。

2. 物理メモリの増量
 該当ゲストOSを右クリック
 →設定の編集
 →ハードディスク1
 →ディスクプロビジョニングから物理ボリュームを増やしたい分増やします。
【重要】あとで物理メモリ拡張の際に、手動で入力するため、何G増やしたのか覚えておいてください。

3. メンテナンスモードにログイン
 もう一度VMをパワーオンして起動し、ふたたびメンテナンスモードで「Give root password for maintenance」とログインを求められたら、rootのパスワードを入力してログイン。
 # パスワード

4. 現在のディスク容量チェック
 # /sbin/fdisk -l
 # df -k
 でハードディスクの容量をチェックして、使用率(Use%)が95%以上まで達していたら確実です。
 だいたい使用率80%超えから発生するようです。(1台めは80%でクラッシュしましたが、2台めは95%になるまで耐えました)

5. 増量した物理メモリをOSに認識させる
 ここから増やした物理メモリをOSに認識させ、ゲストOSが動いているパーティションに統合するための操作をします。
 以下のサイトの手順にしたがって、デバイスに増やした物理メモリを認識させて下さい。
 
 参考サイト:
 VMware仮想ディスクの拡張
 http://blog.as-is.net/2006/11/vmware.html
 (大変助かりました。ありがとうございました)

 ※上記エントリーのvmware-vdiskmanager.exeの実行は既にクライアントから実行済みなので必要ありません。
 fdiskでパーティションを切るところからはじめます。

【重要】
 ※このまま手順を進めた場合、物理ボリュームを作る部分でエラーとなる場合がありますが、その対応は後述します。
 まずはエラーがでる部分まで進めてください。

【重要】
 hda, sdaなどのデバイス名や、増やす容量は、設定に合わせて適宜読み替えてください。
 資料はデバイスがhda、増設は2Gですが、私の場合のゲストOSのデバイスはsdaで、増設は16Gでした。

【重要】
 OSが通常稼働している時に拡張する場合には割りとすんなりと実行出来ますが、今回のようなディスクエラーを起こしている状態で実行すると、物理メモリを作ってデバイスを拡張するところでエラーが発生します。
 # /usr/sbin/pvcreate /dev/sda3
 →file based locking initialisation failed エラーで止まる。

 容量がなくディスクが壊れた風になってしまっています。
 このエラーが出たら、一旦ここでfsckを実行し、Vol00を修復します。
 # fsck
 ※オプションなしで大丈夫です。自動でVol00を修復してくれます。
 実行途中で色々と聞かれますが、ひたすら「y」を打ち続けます。


 (終了後)# reboot
 
 そうするとOSが通常起動するので、すぐにターミナルを起動し、可及的速やかにpvcreateの続きから物理メモリを認識させてください。
 vgextendで/dev/hdc: open failed: メディアが見つかりません と表示されても次行にsuccessfullyとあれば問題ありません(たぶん)
 ※lvextendでInsufficient free space: 188 extents needed, but only 156 available 等のエラーになった場合、物理ボリュームサイズが何らかの要因で確保出来ていないので、減らして再トライしてください。succeccfullyと出るまでです。

6. 現在のディスク容量チェック
 無事に最後まで到達できたら、再びハードディスクの容量チェック。メモリ量が反映され、Use%が無事に下がっていれば完了です。
 # /sbin/fdisk -l
 # df -k


お疲れ様でした。

【参考】
VMware仮想ディスクの拡張
http://blog.as-is.net/2006/11/vmware.html

ディスク追加してリブートしたら、"Locking type 1 initialisation failed." というエラー
http://kenyo.tdiary.net/?date=200711

fsck
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230781/

--------------------------------
だらしない更新ペースのblogですが、本エントリーで100記事目でした。
100記事目は、私のようなハードウェアリテラシーの低い人間が扱うにはハードルが高すぎたVMWareから、思い出の2台クラッシュ事件を。
今思い出しても寒気が・・・。
いつも様々な技術blog様に助けていただいています。
このblogが、少しでも皆様のお役に立つことが出来れば幸いです。

2013年6月13日木曜日

CakePHP:エラーメッセージをモデルに設定しているのに「1」と表示される

誰もこんなことしないのかもしれませんが、心底悔しかったのでメモしておきます。

inputのフォームコントロールに「'error' => false」を記述することで、inputタグのバリデーションメッセージを無効にできます。
(※バリデーションが実行されなくなるわけではないです)
これは主にデザイン上、エラーメッセージの表示場所を変更したい際などに設定します。

この値を「true」にしていると、すべからくエラーメッセージが「1」になります。

フォームをコピペしたりして色々やっているうちにこんな指定をしてしまったんだと思いますが、なんせ「1」としか表示されないので何が悪いのか全く判らずはまりました。
この記述を削除することでエラーメッセージが正常に表示されるようになりました。

※CakePHP 1.3で確認

PHP:window.openで文字化け 

window.openでページを開いたとき、何故か文字コードがutf-8ではなくShift-JISに自動的に変換される場合があります。
HTML,PHP共に文字コードはutf-8で作成しています。

→HTMLを呼び出すPHPプログラムの先頭に
<?php header("Content-type: text/html; charset=utf-8") ?>
を追加し、強制的にutf-8に変換するようにしました。

CakePHP:リファラーを取得する

リファラを取得するのには

$this->referer();

で取得できます。

たとえばCakePHPってページが/root/controller/action/202などURLのラストに引数を含んでいるパターンも多いんですが、もちろんこれもまとめて取得できます。

※CakePHP 1.3で確認

2013年6月10日月曜日

Flex:コンテキストメニュー(右クリックメニュー)が表示されない

Flexでコンテキストメニューを作ると、表示されない場合があります。
Flexのコンテキストメニュー数の制限は15個ですが、それ以下でも表示されないという謎現象。
それは使おうとする単語が、Flexの予約語の場合です。

少なくとも以下はアウトです。
「開く(Open)」
「コピー(Copy)」
「削除(Delete)」
「デバッガー(Debugger)」

このときは単語の後ろに全角スペースを押し込んで対処しました。
半角スペースは効きませんでしたが、&nbsp;は効きます。
こちらの方がいいかも?
空欄で出てくるとかでなく、メニューごと出てこなくなるので、かなり混乱しました。

予約語一覧
  • Save
  • Zoom In
  • Zoom Out
  • 100%
  • Show All
  • Quality
  • Play
  • Loop
  • Rewind
  • Forward
  • Back
  • Movie not loaded
  • About
  • Print
  • Show Redraw Regions
  • Debugger
  • Undo
  • Cut
  • Copy
  • Paste
  • Delete
  • Select All
  • Open
  • Open in new window
  • Copy link
  • Copy Link Location
  • Del
【参照】
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/ui/ContextMenuItem.html
日本語ソースを見つけられませんでした。
時間があるときリスト化したいです。


2013年6月6日木曜日

VB:HTMLDocument InnerHTML, OuterHTMLでパス(hrefやsrc)がローカルのパスに変換されてしまう

VB (.NET Framework 2.0) のHTMLDocument (HTMLElement)のメソッドのInnerHTML, OuterHTMLでhref(aタグのhrefやimgタグのsrcなど)を出力すると、パスが自動的にローカルのパスに変換されてしまいます。
散々探したものの、変換されないようにすることは出来ないようで。
サーバ上で実行すればいいのかもしれませんが、ローカルで確認出来ないもの困ります。
そもそも相対パスがローカルからの絶対パスになってしまうわけで、サーバ上でもうまくいくのかどうか。
なかなかこれだという情報がなく。
今時VBでHTML解析するのも流行らないのでしょうか。。

似たようなお悩みの人は見つけました
avoid innerHTML parsing
http://bytes.com/topic/javascript/answers/91167-avoid-innerhtml-parsing

私はinnerHTMLで取得したものを処理する必要があったので、一度パスをすべて保管してから変換後に再設定することにしました。
泥臭いと思いつつ、URLにある解決策の方法で、いちいちタグを生成して変換後のHTMLの元の場所にappendChildして行くのが出来なかったのです。

こんな感じでまず最初に配列で取得しておいて(*_divはHtmlElement。bodyタグの中身)
Dim _as As HtmlElementCollection = _div.GetElementsByTagName("a")
Dim a_href() As String = Nothing
Dim href_count As Integer = 0
For Each _a As HtmlElement In _as
    ReDim Preserve a_href(href_count)
    a_href(href_count) = _a.GetAttribute("href")
    href_count = href_count + 1
Next
変換が終わったらこれで元に戻す。
href_count = 0 '初期化
For Each _a As HtmlElement In _as
    If (a_href(href_count) <> "") Then
        _a.SetAttribute("href", a_href(href_count))
    End If
    href_count = href_count + 1
Next
途中でurlやimgをappendしてしまった場合、配列の参照エラーになりますのでお気をつけください。

にしても、勝手に変換しないように出来るのが一番いいんですけれども。

2013年5月22日水曜日

Windows7 ネットワークの場所を追加でWebDAVが参照できない

例に漏れず引っかかりました。
ネットワークの場所を追加するでWevDAVのサイトを指定したところ、
こんなエラーに遭遇。

「入力したフォルダーは有効ではないようです。
 別のフォルダーを選択してください。」


OSはWindows 7 Professional SP1。
WebDAV側のIISの設定は以下のとおり。

Windows Server 2008 R2
IIS 7.5
WebDAVオーサリング規則:
すべてのコンテンツ、すべてのユーザ、すべてのアクセス許可にチェック
認証:
Windows認証:無効
基本認証、匿名認証:有効

ぐぐればこのたぐいの情報が鬼のようにあるので片っ端から試してみましたが、なかなか解決に至らず。
どうやらWindows7からのWebDAV接続はSSL接続が必要らしいのです。
SSL接続を利用せず、http(SSLなし)で接続できるようにするため
該当のレジストリを編集することで、私の場合はうまくいきました。
  1. [ファイル名を指定して実行] から「regedit」を入力し、レジストリエディタを起動
  2. 次のレジストリ サブキーを見つけてクリック
  3. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WebClient\Parameters
  4. [BasicAuthLevel] を右クリックし、[修正] をクリック
  5. [DWORD 値の編集] ダイアログ ボックスの「値のデータ」に「2」と入力
    ※備忘録:初期値は1
  6. レジストリ エディターを終了し、PC再起動。
 
【参考サイト】
http://support.kagoya.jp/manual/webdav/win7/index.html

しかしこの設定をする前に一回くらい繋がっていた気がするんですけどね。
気のせいだったのかそれとも夢だったんでしょうか。

2013年5月16日木曜日

リモートデスクトップでCtrl + Alt + Delete

リモートデスクトップ上でロック画面を出したいときはCtrl + Alt + End。
テンキーレスキーボードとかの場合はCtrl + Alt + Fn + End。

2013年4月17日水曜日

PDF 共有レビュー:Web サーバーフォルダー

Acrobat XIで共有レビューをホストするサーバに「Web サーバーフォルダー」を指定する場合、Web サーバーはWebDAV構築されている必要があります。

考えてみれば当たり前ですが、そこに思い至らなかった自戒の意味でも記載。

WebDAV構築されていない普通のWebサーバだと、入力して「次へ」を押したときに「指定された共有フォルダーの場所が有効ではありません」というエラーになり、ステータスは「ネットワーク接続を作成できませんでした」となります。

ちなみにWebDAV構築されていても、認証が正しく設定されていないとステータスが「このネットワークサービスには認証が必要です」と表示されます。
IISから該当のディレクトリにWindows認証か基本認証をつけましょう。
Windows認証の場合は設定画面がそのまま進みます。
基本認証にした場合は、この時点でユーザ名とパスワードを入力するダイアログが表示されます。
どのみちあとで認証アカウントを入力する場面はありますので、あらかじめサーバにWebDAV用のアカウントを作っておくと良いと思います。

2013年4月11日木曜日

.NETでAJAX Control Toolkitを追加する方法

Control Toolkit は拡張ライブラリのため、ASP.NET (Visual Studio) 本体とは別に本家サイト「 Ajax Control Toolkit (英語)」から入手してインストールする必要があります。
ASP.NET 4 環境では AjaxControlToolkit.Binary.NET4.zip
ASP.NET 3.5 環境であれば、AjaxControlToolkit.Binary.NET35.zipをダウンロード。
解凍したフォルダに含まれるAjaxControlToolkit.dll が Control Toolkit の本体。

AjaxControlToolkit.dllを適用する

  1. Visual Studio のツールボックスで右クリックし、[タブの追加] を選択、[Control Toolkit] という名前のタブを追加
  2. 更に、作成した [Control Toolkit] タブが開いた状態で右クリックし[アイテムの選択…] を選択
  3. [ツールボックス アイテムの選択] ダイアログが開くので、[参照…] ボタンから先ほど解凍した AjaxControlToolit.dll を選択。
  4. [.NET Framework コンポーネント] タブのリストに、Control Toolkit で提供されているコントロールの一覧が追加される。
  5. チェックボックスにチェックが入っていることを確認した上で、[OK] ボタンをクリック。
 [Control Toolkit] タブの配下に、Ajax Control Toolkitのコントロールが追加されていれば、Control Toolkit は正しくセットアップできました。

【参考】
http://msdn.microsoft.com/ja-jp/asp.net/gg638967.aspx#05

2013年4月9日火曜日

ImageMagick:EPS画像の背景色を透過してPNGにする

■もともと背景が透過しているepsの場合

convert -colorspace RGB -density 300 -quality 100 sample.eps sample.png

-colorspace RGBオプションが非常に重要です。
その他のオプションは必要なものを設定してください。

■背景が透過されておらず、指定した色を透過させる場合

白を透過させるケースが多いと思いますので、白という前提でいきます。
ただ、白は背景色でなくとも使う場合が多いので、背景を透過すると分かっている場合は#00ff00などの普段あまり使わない色あたりで背景色を塗りつぶしておくとよいと思います。
また最初にpngにしてからそのpngの背景を透過します。
※これを一発でやる方法が判りませんでした。

convert -strip -density 300 -quality 100 -profile icc:JapanColor2001Coated.icc -colorspace cmyk sample.eps -profile icc:sRGB.icc -colorspace rgb sample.png
convert -fuzz 20% -transparent "#ffffff" sample.png sample_t.png


ここで重要なのは-fuzzです。
このままでは完全に真っ白(#ffffff)の色しか透過してくれませんが、fuzzはいい感じに変換する色の範囲を広げてくれる便利オプションです。
変換する色の範囲というか、しきい値を広くしてくれます。
詳しくはImageMagick Command-line Optionsを。
http://www.imagemagick.org/script/command-line-options.php

%の数値を上げるほど、#ffffffと判定される色が増えます。
白っぽい背景はすべて透過してくれるようになりますが、上げ過ぎるとあらゆる色が透過してしまいますので、そこはバランスを見て調整して下さい。
(255、65535、あるいは4294967295の割合でパーセント指定する)
また色指定はカラーコードでなく「white」等の名称でもOKです。

2013年4月3日水曜日

Linux tar.gzの圧縮コマンドと解凍コマンドが覚えられない

tar.gzの圧縮/解凍のコマンド。

解凍: $ tar xzvf package.tar.gz
圧縮: $ tar -cvzf file_B.tar.gz dir_A


私みたいなにわかLinuxサーバ使いが最も使うコマンドのうちのひとつだと思いますが、このコマンドをどうしても覚えられないんです。
というかオプションが覚えられません。
xzまではギリギリ覚えられてもvfが覚えられません。
しかも解凍と圧縮でオプションが微妙に似ているからまたややこしい。
解凍・圧縮をするたびにコマンド辞典をめくるのはもうやめたいです。

というわけで語呂合わせを作ってみました。

解凍:XZビーフ(OZビーフのノリで)

すぐ忘れました。
だって圧縮とどっちかわからないんだもの(´・ω・`)

ではキーボード配置が連続してるから鍵盤に見立ててみたらどうだろう。

解凍: ふぁーそーれーふぁ#ー
圧縮: みーれーそーふぁ#ー

すぐ忘れました。
誰かたすけてください。

VBA:FileSystemObjectは解放した方がいい

VBAの話です。
FileSystemObjectは解放すべきかどうなのか今までよく判らなかったんですが、解放した方がいいですね。
コードの中で一度や二度使って終了するなら解放しなくていいと思いますが、ループで繰り返し使う場合はプログラムが途中で止まってしまったりします。
私の場合はフォルダにあるファイルを1件ずつ検索し、ファイル名のリストと合致していたらある処理をする・・・という関数を、合計2000回くらいループで実行させてたんですが、プログラムの実行が終わっているのにwindowsのお待ちください状態が止まらない現象にあいました。
原因は関数の中でcreateしたFSOを初期化しなかったからだと思います。
Sub Hogehoge
  Dim FSO As Object
  Set FSO = CreateObject("Scripting.FileSystemObject")
  (処理)
  Set FSO = Nothing
End Sub
こんな感じで解放するとよいと思われます。

2013年3月28日木曜日

phpDocumentor:private クラス変数が出力されない

phpDocumentorでprivate クラス変数が出力されない。
または
How to document private variable in phpdoc.

class Sample {
/**
  * りんご(APPLE)
  * @var string
  */
   private $apple = null;
  ...
}
というふうにコメントを記述しているのにprivateのクラス変数が出力されません。
しかも、これがprivateではなくpublicやvarならば出力されます。

そもそもデフォルトでphpDocumentorはprivate変数を出力しないようになっているようなのです。
@accessタグにまつわるバグじゃないんかいと思わないでもないんですが・・・

privateのクラス変数を出力するにはコンパイルに-ppオプションを指定してやる必要があります。

phpdoc –pp -t ./doc -d ./website -o HTML:Smarty: HandS

※-pp:--parseprivate

このオプションでphpdocを実行することで。private変数も出力してくれます。
すっかりはまりました。

phpDocumentor:インストール

phpDocumentorを使ってみました。
pearの自動インストールで、バージョンは1.4.4です。
備忘録がてらまとめました。

phpDocumentor インストール

PEARから自動インストール
# pear install --alldeps phpdocumentor
No releases available for package "pear.php.net/phpdocumentor"
install failed
いきなりエラー。

原因は、インストールしようとしていたウェブサーバ(Linux)が社内ネットワーク上にあり、インターネットの外部接続にプロキシの認証が必要だったからです。
ブラウザを立ち上げて認証し、再び実行。

# pear install --alldeps phpdocumentor
WARNING: "pear/PhpDocumentor" is deprecated in favor of "channel://pear.phpdoc.org/phpdocumentor"
WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
WARNING: "pear/XML_Parser" is deprecated in favor of "pear/XML_Parser2"
downloading PhpDocumentor-1.4.4.tgz ...
Starting to download PhpDocumentor-1.4.4.tgz (1,534,088 bytes)
.....done: 1,534,088 bytes
downloading XML_Beautifier-1.2.2.tgz ...
Starting to download XML_Beautifier-1.2.2.tgz (14,587 bytes)
...done: 14,587 bytes
downloading XML_Parser-1.3.4.tgz ...
Starting to download XML_Parser-1.3.4.tgz (16,040 bytes)
...done: 16,040 bytes
install ok: channel://pear.php.net/PhpDocumentor-1.4.4
install ok: channel://pear.php.net/XML_Parser-1.3.4
install ok: channel://pear.php.net/XML_Beautifier-1.2.2

XMLパーサが重複しているWarningが出たものの、とりあえずOK.

# pear list
Installed packages, channel pear.php.net:
=========================================
PEAR             1.9.4   stable
PhpDocumentor    1.4.4   stable
XML_Beautifier   1.2.2   stable
XML_Parser       1.3.4   stable

ちゃんと入ってました。
これでphpDocumentorのインストールは終了です。

PHPのメモリエラー

インストール中に
Fatal error: Allowed memory size of  XXXXX bytes exhausted ...
のPHpメモリエラーが出た場合は、
php.iniのmemory_limitの設定を8Mないし未設定から16Mなど上に引き上げましょう。
私は最初から256Mあったので出ませんでした。(こんなになくとも良いです)

日本語文字化け対応

このまま出力するとコメントに含まれている日本語が文字化けします。
PhpDocumentorで使われているSmartyのテンプレート(header.tpl)にmetaタグでのエンコード指定がないか、デフォルトでiso-8859-1が指定されているからです。
そのため、header.tplテンプレートのエンコードをUTF-8(スクリプトのエンコード)指定を追記するか、iso-8859-1を書き換えます。
metaタグを追記する

<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>


metaタグをUTF-8に書き換える
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
→'text/html; charset=UTF-8'

修正対象テンプレート

[PEAR]:開発環境では[/usr/local/share/pear]
[TMP]:開発環境では[/data/PhpDocumentor/phpDocumentor/Converters/HTML]
・[PEAR][TMP]/frames/templates/phpedit/templates/header.tpl
・[PEAR][TMP]/frames/templates/phphtmllib/templates/header.tpl
・[PEAR][TMP]/frames/templates/DOM/phphtmllib/templates/header.tpl
・[PEAR][TMP]/frames/templates/DOM/earthli/templates/header.tpl
・[PEAR][TMP]/frames/templates/DOM/default/templates/header.tpl
・[PEAR][TMP]/frames/templates/DOM/l0l33t/templates/header.tpl
・[PEAR][TMP]/frames/templates/DOM/phpdoc.de/templates/header.tpl
・[PEAR][TMP]/frames/templates/earthli/templates/header.tpl
・[PEAR][TMP]/frames/templates/default/templates/header.tpl
・[PEAR][TMP]/frames/templates/l0l33t/templates/header.tpl
・[PEAR][TMP]/frames/templates/phpdoc.de/templates/header.tpl
・[PEAR][TMP]/Smarty/templates/HandS/templates/header.tpl
・[PEAR][TMP]/Smarty/templates/PHP/templates/header.tpl
・[PEAR][TMP]/Smarty/templates/PEAR/templates/header.tpl
・[PEAR][TMP]/Smarty/templates/default/templates/header.tpl

全て修正しても良いですし、自分の使うテンプレートだけでも良いと思います。
これで実行準備が整いました。

phpDocumentorを実行

ディレクトリ出力
phpdoc –pp -t ./doc -d ./website -o HTML:Smarty: HandS
ファイル出力
phpdoc -pp -t ./doc  -f ./website/SampleOutput.php -o HTML:Smarty:HandS

実行オプション:
-t: DOCの出力先
-d:DOCにする対象フォルダ
-o:出力形式の指定
-pp:—parseprivate。
※特にこのオプションは重要です。
このオプションがないとprivateのクラス変数を出力してくれないためです。

実行

Parsing time: 18 seconds
Conversion time: 41 seconds
Total Documentation Time: 59 seconds
done


出力完了。

指定したフォルダ(この場合はhttps://localhost/website/doc/) にドキュメント一式が生成されます。

2013年3月27日水曜日

xalan バージョン確認

xalanのバージョンを確認するには下記のコマンドを実行。

java -classpath /usr/share/xalan/xalan.jar org.apache.xalan.processor.XSLProcessorVersion

Xalan Java 2.7.1


※/usr/share/xalan/xalan.jar は適宜xalanへのpathにしてください。

2013年3月26日火曜日

ASP.NET Chart:軸の線の種類を変える

ASP.NET 4.0
Chartコントロールでx軸やy軸の線の種類を変える

<ChartAreas>をこんな風に設定します。
・・・キャメルケースが消えてしまいました。
全部小文字になってしまいましたが、実際はASP.NETの流儀に乗っ取って下さい。
                    
                        
                            
                            
                                
                            
                        
                    
axisyのタグ内にプロパティとして含めたLineDashStyleが、グラフの左端の線になります。
(x軸に設定した場合は下)
ここを設定しただけでは中の線は代わってくれないのです。
中の線の種類を変えたい場合は、axisyタグの子としてmajorgridを設定します。
これを設定することで中の線種が変化します。

2013年3月22日金曜日

ASP.NET customErrors defaultRedirectに設定したエラーページに遷移しない

これもまたハマりました。
ASP.NETの簡易エラーページを表示させようと、Web.configに以下を設定しました。

<configuration>
  <system.web>
    <customErrors mode="On" defaultRedirect="Error.html" />
  <system.web>
<configuration>

この状態でログインページを表示し、DBの接続文字列を不正なものにして接続エラーを出してみたんですが、指定したリダイレクトページが出ませんでした。あと挙動がとてもおかしいいです。

1. ログインする
2. セッションエラーが出てまたログインを迫られる
3. またログインする
4. ASP.NETデフォルトのエラーページが表示される

???
Error.htmlはどこいった?

ずっと原因が判らずハマってたのですが、原因がForm認証にありました。
現在Web.configではこんなようなForm認証を設定しています。

 <authentication mode="Forms">
  <forms loginUrl="~/Login.aspx" name=".ASPXFORMSAUTH" timeout="2880" defaultUrl="~/Top.aspx"/>
 </authentication>

(略)

Form認証は、認証前はどのページにアクセスしてもデフォルトページに戻す仕様です。
defaultRedirectで設定したエラーページも例外ではありません。
ということでログインのときに接続エラー→エラーページにリダイレクト→Form認証エラでログインページに戻される→またログイン→エラーページにリダイレクト・・・と
そこでループが発生していたのでした。
回避するためにcommonフォルダを除外するなどのエントリも以前書きました。
すぐ思い出せなかったのが悔しい・・・。
そういうわけですので、エラーページをフォーム認証の例外ページにするようWeb.configで設定することでリダイレクトページが正常に機能するようになりました。
こんな感じです。

 <location path="Error.html">
  <system.web>
   <authorization>
    <allow users="*"/>
   </authorization>
  </system.web>
 </location>


※<system.web>の前に入れて下さい。

2013年3月19日火曜日

Visual Studio 2010 IE10 iexplore.exeにスクリプトデバッガーをアタッチできませんでした。デバッガーは既にアタッチされています。というエラー

ASP.NET 4.0
Visual Studio 2010

開発途中で、IE9からIE10に更新したら、デバッグを起動すると

「コンピュータ 'コンピュータ名' 上のプロセス [プロセスID] iexplore.exeにスクリプトデバッガーをアタッチできませんでした。デバッガーは既にアタッチされています。」

というエラーがポップアップするようになりました。
デバッガ自体は普通に起動し、ブレークポイントでも止まってくれますが、デバッグを起動するたびにポップアップが出て正直邪魔です。
どうもデバッガを二重起動しているみたいな雰囲気です。(全然違うかもしれませんが)

エラーメッセージで検索してみるも、どれも違うような・・・
仕方がないので範囲を英語に広げて検索してみて見つけました。

Visual Studio 2010 debugger already attached classic ASP
http://social.msdn.microsoft.com/Forums/en-US/vsdebug/thread/7cdb53cd-0f26-47ae-aaf5-9113b6dfc96a/

Unable to javascript debug IE 10 with Visual Studio 2010
http://social.msdn.microsoft.com/Forums/en-US/vsdebug/thread/84b22d20-6e03-4095-a51d-821eba7a14ed?prof=required

結論から言うと2番めのURLにあった方法でエラーが出なくなりました。

1. IEを閉じる
2. コマンドプロンプトで以下のコマンドを叩く。
regsvr32.exe "%ProgramFiles(x86)%\Common Files\Microsoft Shared\VS7Debug\msdbg2.dll"

私はC:\Program Files\Common Files\microsoft shared\VS7Debugまで移動してから
regsvr32.exe msdbg2.dllとやりました。

デバッガのモジュールを(COMコンポーネント)をもう一回登録しなおす感じです。
IE10に上げるとこのあたりの関連がどうにかなってしまうんでしょうかね。
 

ASP.NET 4.0 IE10 で '__doPostBack' は定義されていません。

ASP.NET 4.0 、IE9、IIS 7で開発途中、IE10がWindows Update更新対象になったので、バージョンを上げてみました。
そしたら作成していたウェブアプリケーションがポストバックのたびにエラーで止まるようになりました。

ユーザー エージェント: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)タイムスタンプ: Fri, 15 Mar 2013 07:41:06 UTC
__doPostBack' は定義されていません。

そんな!!

ASP.NET 4.0だとIE10の検出がデフォルトでサポートされておらず、パッチをあててIE10用のユーザーエージェント文字列を出力する必要がありました。

ASP.NET が Internet Explorer 10 の検出に失敗する
http://msdn.microsoft.com/ja-jp/library/ie/hh869299(v=vs.85).aspx

Internet Explorer 10 のユーザー エージェント文字列
http://msdn.microsoft.com/ja-jp/library/ie/hh869301(v=vs.85).aspx

Microsoft.NET Framework 4.0 で ASP.NET ブラウザー定義ファイルの修正プログラムが利用可能です。
http://support.microsoft.com/kb/2600088/ja

一番下のリンクから修正パッチを請求してローカルの開発環境とサーバの両方にインストールすれば正常に動くようになります。
IE9以下ではエラーにならないので発覚しづらいのですが、これはかなり致命的です。

ついでにVisual Studio 2010でのデバッグでも、IE10にあげたら、「コンピュータ 'コンピュータ名' 上のプロセス [プロセスID] iexplore.exeにスクリプトデバッガーをアタッチできませんでした。デバッガーは既にアタッチされています。」というエラーを吐くようになりました。
デバッグ自体は動いているのですが、いちいち警告がポップアップされるのでちょっと邪魔。
これの対応も手間取りました。別項で。

2013年3月5日火曜日

IIS + ASP.NET 本番サーバ移行のトラブル備忘録

お約束だとわかっていてもつらい本番トラブル。

IIS 7.5 ASP.NET 4.0
ASP.NETウェブアプリケーションを開発サーバから本番サーバに
移行した際のトラブルと対処を備忘録代わりにメモ。

1.  500.19  エラー
HTTP エラー 500.19 - Internal Server Error
ページに関連する構成データが無効であるため、要求されたページにアクセスできません。
エラー コード 0x80070021

構成エラー この構成セクションをこのパスで使用できません。この問題は、親レベルでセクションがロックされているときに発生します。ロック状態は既定で設定されているか (overrideModeDefault="Deny")、または overrideMode="Deny" もしくは従来の allowOverride="false" を含んだ場所タグによって明示的に設定されます。

→IISにASP.NETがインストールされていなかった。
 サーバーマネージャー起動
 役割サービス→ASP.NET, ISAPI拡張などをインストール。

2. 5 00.21 エラー
HTTP エラー 500.21
ハンドラー "***" のモジュール リストにあるモジュール "ManagedPipelineHandler" が正しくありません。


→ASP.NETが<正しく>インストールされていなかった?
 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
 を実行し、ASP.NETとIISを関連付けてインストールすることで動くようになりました。
【参考サイト】
 http://ytakai.info/2011/05/18.php

3. さらに 401.2 エラー 許可されていないエラー
401.2 権限がありません: サーバーの設定のためログオンに失敗しました。

このエラーは、サーバーに渡されたアカウント情報がこのサーバーにログオンできるアカウント情報と一致していないことを示します。このエラーは通常、適切な WWW 認証ヘッダ フィールドが送信されない場合に起こります。

→IISのウェブサイトの設定の「認証」設定から
 匿名認証とフォーム認証を有効にすることで解決。
 これは他にも
 http://support.microsoft.com/kb/261689/ja
 あたりが役に立ちそうです。

Oracleの接続にもおもいっきりつまづきました。
それは後ほど。

2013年2月22日金曜日

ASP.NET:Form認証のログインページでjavascriptやcss(外部ファイル)が効かない

ASP.NET のフォーム認証でハマりました。

web.configに以下を記述しForm認証を設定。

<authentication mode="Forms">
  <forms loginUrl="~/Login.aspx" name=".ASPXFORMSAUTH" timeout="2880" defaultUrl="~/Top.aspx" />

</authentication>

そしたらログインページでjavascriptやcss、画像などの外部ファイルが効かなくなり、なんとも簡素なページが表示されてしまった。
原因はアプリケーションサイト内のすべてのコンテンツに対して認証がかかってしまったため。
ログイン認証が通れば普通に表示される。
ログインページに直接cssを書くのもありですが、画像はどうにもならない。

web.configに、認証の例外としたいフォルダを指定することで対応。
configurationタグ内に記載して下さい。

 <location path="common">
  <system.web>
   <authorization>
    <allow users="*"/>
   </authorization>
  </system.web>
 </location>


ついでに、認証後のReturnUrlが、直前のページではなく、一定のページで良い場合は
FormsAuthentication.RedirectFromLoginPage(USERID, False)
のかわりに
FormsAuthentication.SetAuthCookie(USERID, False)
Response.Redirect("/Top.aspx")

とします。



2013年2月20日水曜日

This page is missing a HtmlHead control which is required for the CSS stylesheet link that is being added

ASP.NET(私の場合は4.0)でCalendarExtenderを含むページを実行したらエラー。
CalendarExtenderにかぎらず、Control Toolkitで起こるのかもしれません。

'/Hoge' アプリケーションでサーバー エラーが発生しました。
--------------------------------------------------------------------------------

This page is missing a HtmlHead control which is required for the CSS stylesheet link that is being added. Please add <head runat="server" />.
説明: 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。エラーに関する詳細および例外の発生場所については、スタック トレースを参照してください。

例外の詳細: System.NotSupportedException: This page is missing a HtmlHead control which is required for the CSS stylesheet link that is being added. Please add <head runat="server" />.
ソース エラー:
現在の Web 要求の実行中にハンドルされていない例外が生成されました。障害の原因および発生場所に関する情報については、下の例外スタック トレースを使って確認できます。 

エラーが言っているとおり、Site.Masterや各ページの<head>を<head runat="server">と書き換えます。

2013年2月15日金曜日

Windowsのコマンドプロンプト(cmd)を管理者として実行する

Windows XPまではコマンドプロンプトを起動するとき、Win+Rで「ファイル名を指定して実行」を呼び出し、cmdと打ち込んでからEnterを押して起動していました。
慣れるとこちらのほうがアクセサリやデスクトップのショートカットをクリックするより早いんです。

が、Windows 7 になって、このコマンドプロンプトを管理者として実行したい場合がちょいちょいあります。
今まではわざわざすべてのプログラム→アクセサリ→管理者として実行、で起動してましたが、もう面倒。

ですが見つけました。ショートカットを。

Winキー押下
→検索ダイアログにcmdと入力
→Shift+Ctrl+Enterで管理者起動

UACのダイアログが出るのは致し方ありませんが・・・。
ちなみにWin+Rの「ファイル名を指定して実行」でShift+Ctrl+Enterを押してもこれは出来ないです。
ついクセでRまでつけたくなるのですが。

ConnectionStringにOLE DB を指定すると 404 ページが見つかりません

ASP.NET 4.0 IIS 7 にて開発中の出来事。
32bitのIISのローカル環境で開発し、データベース回りをOle Dbを使って実装。
providerNameはSystem.Data.OleDb、OleDbConnectionを用いてOracle11gに接続していました。
いざ本番環境と同じものにセッティングしたIISにコンテンツを乗せてアクセスしてみると
「404 ページが見つかりません」
エラーが発生。

原因はサーバが64bit版だったこと。
64bitのIISはデフォルトで32bitのアプリケーションが動かないようです。
そしてOle DBは32bitでした。(現時点で32bitまでしかサポートしていない?)
32bitのOleDBを動かすためにはIISに設定をしてやる必要があります。

 設定方法
  1. IISマネージャを起動
  2. 「アプリケーションプール」を選択
  3. 「DefaultAppPool」から「詳細設定」を選択
  4. 全般の項目にある「32ビットアプリケーションの有効化」をFalseからTrueに変更

【参考サイト】
IIS(64ビット版)でJETを使用する。
http://blogs.gine.jp/taka/archives/1417

32bit Application on 64bit IIS7
http://blogs.gine.jp/kusa/archives/131

2013年1月16日水曜日

Imagemagick PHP sh: convert command not found

PHPからexecなどでImageMagickのconvertなど発行すると、apacheのエラーログに
「sh: convert command not found」
とエラーが表示されてしまう場合がある。
これはapacheの実行パスにImageMagickが含まれていないため。
インストール後にapacheのPATHを必ず設定するか、プログラム内でconvertに実行パスを付加する。

apacheに実行パスを通す方法
phpinfoのEnvironmentを確認し、「PATH」にimagemagickのconvertコマンドのパスが記載されていなかった場合、/etc/sysconfig/httpdに「PATH」を追記し、httpdを再起動する。

httpdの例:
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/pgsql/bin

今回はusr/local/binにImageMagickをインストールしたため、PATHに/usr/local/binを設定した。

httpd再起動:
# /etc/rc.d/init.d/httpd restart

2013年1月13日日曜日

HUNTER×HUNTER 緋色の幻影 感想

本来想定していたblogの用途(開発ネタ、SF小説ネタ)とは逸脱しているとは思いますが、書いておきます。

映画 HUNTER×HUNTER 緋色の幻影を見て来ました。
見に行った人間で挙げた感想をまとめておきます。
ネタバレ含みます。

※非常に不愉快にさせてしまうとおもいますので、映画が面白かったと思う方はこの先をお読みにならないで下さい※

【良かった点】

・オモカゲの声優(藤木直人)が終盤につれて段々上手になっていった。
・パイロの声優がよかった。
・MVPはノブナガ。
・MVPはヒソカ。
・最後、ヒソガがとてもかっこよかった。
・アニメって動いてるのがいいよね。
・キルアがたくさん見られて嬉しかった。


【アレだった点】

・ただの友情物語だった。強調しすぎてしつこい。
・緋色の話というよりキルアの話だった。
・0巻の内容が映画に盛り込まれているが、時間の関係か、肝心な部分が歯抜けで感動半減。
・今更感満載なイルミの説教とキルアのトラウマがしつこい。
・ゴンって本当に主人公なんだっけ。
・なぜそこで列車!?キルアはそんなことしないとおもいます。
・シャルナークの声ってそんなんだったっけ。(映画無関係)
・フェイタンの声ってそんなんだったっけ。(映画無関係)
・最終戦闘がしょぼい。イルミのパンチが適当すぎる。
・病院のシーンで振り返ったレオリオの顔が崩壊していた。
・崖の上のゴンとキルアのシーンで顔が適当すぎる。
・最後、ヒソカばっかり目立ちすぎ。
・全体的に音楽が雰囲気とまったく合ってない。
・戦闘シーンの音楽がおかしい。派手すぎる。というか明るすぎる。
・全体的に爽やか感満載で鼻につく。
・全体的にシーンが間延びしすぎている。
・最後のキルアとクラピカのやりとりも不自然。
 「クラピカはこれ以上手を汚しちゃダメだ。俺に出来るのはこれくらいだから」
 って、キルアはそんなこと言うやつじゃないとおもいます。
・そしてなぜ、なぜ、主題歌がゆずだったんですか!?


とまぁ・・・全体的に正直、ひどいつらい感じでした。
日テレ番はアニメもそうですが、キャラクター考証とかもどこか食い違う感じ。
原作ハンタが好きな人は、映画は・・・動いている彼らを見に行くくらいの心構えで行くといいと思います。

あくまで個人の感想です。
ただ、ハンタが大好きで、アニメのこれからにもとても期待しています。