実行するとグローバルIPアドレスを取得してファイルに保存するツール「グローバルIPアドレス取得ツール」Ver 1.01 を公開しました。もともとは sorceryforce.com の方で公開していたのですが、プログラム改修にあたって sorceryforce.net の方に持ってきました。
使い方や用途などは専用ページの方に記載していますのでそちらをご覧ください。
]]>実行するとグローバルIPアドレスを取得してファイルに保存するツール「グローバルIPアドレス取得ツール」Ver 1.01 を公開しました。もともとは sorceryforce.com の方で公開していたのですが、プログラム改修にあたって sorceryforce.net の方に持ってきました。
使い方や用途などは専用ページの方に記載していますのでそちらをご覧ください。
]]>メモ書きです。
あるプログラムで .aspx ファイルをいじっていて、そのファイルを直接プログラムで読み込んでみたらいくつかの行末に「 」が付加されていました。原因はわかりませんがたぶんエンコードの問題ではないかと思います。
読み込んだ文字列は string.Trim を掛けていたので問題ないと思っていたのですが、処理上問題が発生していてデバッグしてみたら文字列の最後に「 」が付いていたのが問題だったみたいです。string.Trim メソッドでは「 」を削除できないようなので以下のようにして削除しました。
text.Replace(" ", "");
現在公開しているツール「ちーたんタッチボード」では、色情報を 0.0 ~ 1.0 の小数で持っているのですが、プログラムで ARGB として設定する際に 0 ~ 255 形式に変換する必要がありました。しかし、小数↔整数 の変換には誤差がつきものなのでどうにかならないのかなと思っていたのですが、WPF で使用されている System.Windows.Media.Color に「ScA」「ScR」のようなプロパティがあるのを見つけました。
MSDN で調べてみると渡す値は 0 ~ 1 と書いてあったので「0 ~ 255 の代わりに 0.0 ~ 1.0 の線形補間で色情報を渡せるんだ」と思い込んでしまったのが悪夢の始まりでした。
実は現在公開しているちーたんタッチボード Ver 0.23 では背景や文字の色設定を行うと設定するたびに微妙に色が変わったりする不具合が存在しています。もうお分かりかと思いますが、上記の誤解により発生している不具合です。(次に公開する Ver 0.30 では治ってます^^;)
当時原因がよくわからなくてほかのライブラリが原因なのではないかとか思ったりしていたのですが、最終的に Color 構造体に秘密があるのではないかと思い、値設定後の各パラメータのダンプを取ってみました。以下は ScX プロパティに 0.01 ずつ設定したものです。
A | R | G | B | ScA | ScR | ScG | ScB |
---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 |
3 | 25 | 25 | 25 | 0.01 | 0.01 | 0.01 | 0.01 |
5 | 39 | 39 | 39 | 0.02 | 0.02 | 0.02 | 0.02 |
8 | 48 | 48 | 48 | 0.03 | 0.03 | 0.03 | 0.03 |
10 | 56 | 56 | 56 | 0.04 | 0.04 | 0.04 | 0.04 |
13 | 63 | 63 | 63 | 0.05 | 0.05 | 0.05 | 0.05 |
15 | 69 | 69 | 69 | 0.06 | 0.06 | 0.06 | 0.06 |
18 | 75 | 75 | 75 | 0.07 | 0.07 | 0.07 | 0.07 |
20 | 80 | 80 | 80 | 0.08 | 0.08 | 0.08 | 0.08 |
23 | 85 | 85 | 85 | 0.09 | 0.09 | 0.09 | 0.09 |
26 | 89 | 89 | 89 | 0.10 | 0.10 | 0.10 | 0.10 |
28 | 93 | 93 | 93 | 0.11 | 0.11 | 0.11 | 0.11 |
31 | 97 | 97 | 97 | 0.12 | 0.12 | 0.12 | 0.12 |
33 | 101 | 101 | 101 | 0.13 | 0.13 | 0.13 | 0.13 |
36 | 105 | 105 | 105 | 0.14 | 0.14 | 0.14 | 0.14 |
38 | 108 | 108 | 108 | 0.15 | 0.15 | 0.15 | 0.15 |
41 | 111 | 111 | 111 | 0.16 | 0.16 | 0.16 | 0.16 |
43 | 115 | 115 | 115 | 0.17 | 0.17 | 0.17 | 0.17 |
46 | 118 | 118 | 118 | 0.18 | 0.18 | 0.18 | 0.18 |
48 | 121 | 121 | 121 | 0.19 | 0.19 | 0.19 | 0.19 |
51 | 124 | 124 | 124 | 0.20 | 0.20 | 0.20 | 0.20 |
54 | 126 | 126 | 126 | 0.21 | 0.21 | 0.21 | 0.21 |
56 | 129 | 129 | 129 | 0.22 | 0.22 | 0.22 | 0.22 |
59 | 132 | 132 | 132 | 0.23 | 0.23 | 0.23 | 0.23 |
61 | 134 | 134 | 134 | 0.24 | 0.24 | 0.24 | 0.24 |
64 | 137 | 137 | 137 | 0.25 | 0.25 | 0.25 | 0.25 |
66 | 139 | 139 | 139 | 0.26 | 0.26 | 0.26 | 0.26 |
69 | 142 | 142 | 142 | 0.27 | 0.27 | 0.27 | 0.27 |
71 | 144 | 144 | 144 | 0.28 | 0.28 | 0.28 | 0.28 |
74 | 147 | 147 | 147 | 0.29 | 0.29 | 0.29 | 0.29 |
77 | 149 | 149 | 149 | 0.30 | 0.30 | 0.30 | 0.30 |
79 | 151 | 151 | 151 | 0.31 | 0.31 | 0.31 | 0.31 |
82 | 153 | 153 | 153 | 0.32 | 0.32 | 0.32 | 0.32 |
84 | 155 | 155 | 155 | 0.33 | 0.33 | 0.33 | 0.33 |
87 | 158 | 158 | 158 | 0.34 < /td> | 0.34 | 0.34 | 0.34 |
89 | 160 | 160 | 160 | 0.35 | 0.35 | 0.35 | 0.35 |
92 | 162 | 162 | 162 | 0.36 | 0.36 | 0.36 | 0.36 |
94 | 164 | 164 | 164 | 0.37 | 0.37 | 0.37 | 0.37 |
97 | 166 | 166 | 166 | 0.38 | 0.38 | 0.38 | 0.38 |
99 | 168 | 168 | 168 | 0.39 | 0.39 | 0.39 | 0.39 |
102 | 170 | 170 | 170 | 0.40 | 0.40 | 0.40 | 0.40 |
105 | 172 | 172 | 172 | 0.41 | 0.41 | 0.41 | 0.41 |
107 | 173 | 173 | 173 | 0.42 | 0.42 | 0.42 | 0.42 |
110 | 175 | 175 | 175 | 0.43 | 0.43 | 0.43 | 0.43 |
112 | 177 | 177 | 177 | 0.44 | 0.44 | 0.44 | 0.44 |
115 | 179 | 179 | 179 | 0.45 | 0.45 | 0.45 | 0.45 |
117 | 181 | 181 | 181 | 0.46 | 0.46 | 0.46 | 0.46 |
120 | 182 | 182 | 182 | 0.47 | 0.47 | 0.47 | 0.47 |
122 | 184 | 184 | 184 | 0.48 | 0.48 | 0.48 | 0.48 |
125 | 186 | 186 | 186 | 0.49 | 0.49 | 0.49 | 0.49 |
128 | 188 | 188 | 188 | 0.50 | 0.50 | 0.50 | 0.50 |
130 | 189 | 189 | 189 | 0.51 | 0.51 | 0.51 | 0.51 |
133 | 191 | 191 | 191 | 0.52 | 0.52 | 0.52 | 0.52 |
135 | 192 | 192 | 192 | 0.53 | 0.53 | 0.53 | 0.53 |
138 | 194 | 194 | 194 | 0.54 | 0.54 | 0.54 | 0.54 |
140 | 196 | 196 | 196 | 0.55 | 0.55 | 0.55 | 0.55 |
143 | 197 | 197 | 197 | 0.56 | 0.56 | 0.56 | 0.56 |
145 | 199 | 199 | 199 | 0.57 | 0.57 | 0.57 | 0.57 |
148 | 200 | 200 | 200 | 0.58 | 0.58 | 0.58 | 0.58 |
150 | 202 | 202 | 202 | 0.59 | 0.59 | 0.59 | 0.59 |
153 | 203 | 203 | 203 | 0.60 | 0.60 | 0.60 | 0.60 |
156 | 205 | 205 | 205 | 0.61 | 0.61 | 0.61 | 0.61 |
158 | 206 | 206 | 206 | 0.62 | 0.62 | 0.62 | 0.62 |
161 | 208 | 208 | 208 | 0.63 | 0.63 | 0.63 | 0.63 |
163 | 209 | 209 | 209 | 0.64 | 0.64 | 0.64 | 0.64 |
166 | 211 | 211 | 211 | 0.65 | 0.65 | 0.65 | 0.65 |
168 | 212 | 212 | 212 | 0.66 | 0.66 | 0.66 | 0.66 |
171 | 214 | 214 | 214 | 0.67 | 0.67 | 0.67 | 0.67 |
173 | 215 | 215 | 215 | 0.68 | 0.68 | 0.68 | 0.68 |
176 | 216 | 216 | 216 | 0.69 | 0.69 | 0.69 | 0.69 |
179 | 218 | 218 | 218 | 0.70 | 0.70 | 0.70 | 0.70 |
181 | 219 | 219 | 219 | 0.71 | 0.71 | 0.71 | 0.71 |
184 | 221 | 221 | 221 | 0.72 | 0.72 | 0.72 | 0.72 |
186 | 222 | 222 | 222 | 0.73 | 0.73 | 0.73 | 0.73 |
189 | 223 | 223 | 223 | 0.74 | 0.74 | 0.74 | 0.74 |
191 | 225 | 225 | 225 | 0.75 | 0.75 | 0.75 | 0.75 |
194 | 226 | 226 | 226 | 0.76 | 0.76 | 0.76 | 0.76 |
196 | 227 | 227 | 227 | 0.77 | 0.77 | 0.77 | 0.77 |
199 | 229 | 229 | 229 | 0.78 | 0.78 | 0.78 | 0.78 |
201 | 230 | 230 | 230 | 0.79 | 0.79 | 0.79 | 0.79 |
204 | 231 | 231 | 231 | 0.80 | 0.80 | 0.80 | 0.80 |
207 | 232 | 232 | 232 | 0.81 | 0.81 | 0.81 | 0.81 |
209 | 234 | 234 | 234 | 0.82 | 0.82 | 0.82 | 0.82 |
212 | 235 | 235 | 235 | 0.83 | 0.83 | 0.83 | 0.83 |
214 | 236 | 236 | 236 | 0.84 | 0.84 | 0.84 | 0.84 |
217 | 237 | 237 | 237 | 0.85 | 0.85 | 0.85 | 0.85 |
219 | 239 | 239 | 239 | 0.86 | 0.86 | 0.86 | 0.86 |
222 | 240 | 240 | 240 | 0.87 | 0.87 | 0.87 | 0.87 |
224 | 241 | 241 | 241 | 0.88 | 0.88 | 0.88 | 0.88 |
227 | 242 | 242 | 242 | 0.89 | 0.89 | 0.89 | 0.89 |
230 | 243 | 243 | 243 | 0.90 | 0.90 | 0.90 | 0.90 |
232 | 245 | 245 | 245 | 0.91 | 0.91 | 0.91 | 0.91 |
235 | 246 | 246 | 246 | 0.92 | 0.92 | 0.92 | 0.92 |
237 | 247 | 247 | 247 | 0.93 | 0.93 | 0.93 | 0.93 |
240 | 248 | 248 | 248 | 0.94 | 0.94 | 0.94 | 0.94 |
242 | 249 | 249 | 249 | 0.95 | 0.95 | 0.95 | 0.95 |
245 | 250 | 250 | 250 | 0.96 | 0.96 | 0.96 | 0.96 |
247 | 252 | 252 | 252 | 0.97 | 0.97 | 0.97 | 0.97 |
250 | 253 | 253 | 253 | 0.98 | 0.98 | 0.98 | 0.98 |
252 | 254 | 254 | 254 | 0.99 | 0.99 | 0.99 | 0.99 |
255 | 255 | 255 | 255 | 1.00 | 1.00 | 1.00 | 1.00 |
見事に線形ではありませんでした。
よくよく調べてみると ARGB のほうは sRGB という規格、ScA ScR ScG ScB のほうは scRGB という規格らしいです。scRGB については以下のサイトなどを参考にしてください。簡単にまとめると、sRGB(8bit) では表現できなかった色を 12bit や 16bit などに拡張してより多くの色情報を表現できるようにしたものです。
しかし、いろいろ調べてみても sRGB と scRGB の変換方法がよくわからなかったのでコードベースで情報がないか調べてみたところ以下のサイトがありました。
確かにこのコードに当てはめると Color 構造体で出力された結果と一致しました。ですが、この変換処理と scRGB について書かれている公式との関連性がよくわかりませんでした。Microsoft が独自に定義したものかもしれませんが、それについても文面を見つけることができませんでした。
まあとりあえず現状は 0.0~1.0 と 0~255 は単純に線形変換させて対応することにし、scRGB については今回の記事で参考になったという形にとどめておきたいと思います。なにか詳しい情報があればコメントいただければと思います。
]]>WordPress の標準機能にアクセスカウンターの機能がなかったのでずっと放置していたのですが、久々に調べてみたらプラグインでいろいろ公開されているみたいだったのでサイドメニューに追加してみました。
使用したプラグインは「count per day」というもので、英語圏のプラグインなのですが、インストール後は自動的に日本語で表示されるので割と使いやすいです(一部英語のままですが)。プラグインインストール後はウィジェットから配置できます。
WordPress のアクセスカウンターなので sorceryforce.net や sorceryforce.com のアクセスカウントは含まれません。
]]>
環境
Crystal Reports のデータベース フィールドに DataSet のテーブルをバインドした後に、DataSet のテーブルの項目を変更してもデータベース フィールドには自動的に反映されません。最新の状態を反映させるには以下の手順を行います。
気づいていた人はあんまりいないと思いますが、Web サイト「sorceryforce.net」では複数の言語で表示できるように構築していました。今回その動作仕様を変更しています。
今までは多言語対応は以下のようにしていました。
しかし、上記の対応ではいくつか問題がありました。
まず 1 についてですが、ユーザーが意識せずに表示言語が自分の環境に合わせて変更されるというメリットがあるのですが、SEO 観点からみると、どんなに複数の言語に対応されていたとしても URL は一つであるため、言語数分の評価がされないということです。基本的には日本語がメインなのですが、代わりに英語で評価されたとした場合にコンテンツ力が低いとみなされると「http://sorceryforce.net/」の評価が下がってしまい、同時に日本語サイトとしての評価も下がってしまうことになります。
2 についても SEO 観点から見た場合、クエリパラメータによる多言語対応はあまり評価対象にはならないようです。
上記の理由から今回以下のように多言語対応の仕様を変更しました。
1 については前の仕様のクエリパラメータによる言語指定をパスに移動させた形になります。これにより、言語単位で URL が決定するので SEO に対する評価も言語単位になります。クエリパラメータで指定した場合とどれぐらい評価が違うのかといわれると定かではありませんが、URL の見た目的にもユーザーに分かりやすい形になっていると思います。URL の言語部分を変えれば表示される言語も変わります。たぶん大手のサイトとかもこの形式を採用しているところが多いです。
2 については言語が、指定されていなかった場合、日本語がメインのサイトなので日本語のページを表示させようかと思いましたが、正直、URL に対して言語指定ありなしで言語表示を分岐させるのがめんどうだったのでやめました。また、せっかく英語環境で見に来ても日本語で表示されるとみてくれない可能性もあるので、そうであれば対応する言語のページに飛ばした方が有意義かなと思いました。URL を変えずに表示言語を変える方法は前回の使用の 1 に該当してしまうのでやっていません。
上記変更に伴い、せっかくなのでユーザーが言語を変更できるようにページの左側に言語を選択できるドロップダウンをつけてみました。これでいちいち URL を変更せずに直接見たい言語を選択できるようになりました。また、前の仕様ではページを切り替えるたびに URL で再度言語を入力しなければいけませんでしたが、今回の修正に伴い、表示されている言語のままほかのページへページングできるようにもしました。
さて、ここまでの話でなんだか大がかりな変更をしているようにも思えるかもしれませんが、実は中身のコンテンツに対してはあまり多言語対応していません orz。特に Tips 系は日本語のままなのでどうしようかなと思っています。実際 HTML の多言語化をどうすればいいのかなーと悩んでいる段階です。まあ、コンテンツについてはおいおい対応していきたいと思います。
]]>
なかなか手が付かずに更新できていませんでしたが、小規模なバージョンアップを行いました。内容は
です。高負荷状態のときにマウスカーソルが飛ぶ現象は自分でも割とあったので、マウスパッド使っている方は適用してみるといいかもしれません。
今回は小規模なものなのでバージョンは +0.01 にしました。もう少し大きめな機能拡張とかも考えているのですが、実装時期はまだ未定です。実装したらたぶん 0.30 ぐらいにするんじゃないかと思っています。
公開した後に気づいたのですが、既知の不具合として、設定画面で色設定あたりを変更するたびに微妙に色が変わってしまっているような気がします。そのせいでダイアログを閉じるたびに変更破棄確認ダイアログが出てしまっているようです。これについては次のバージョンで治したいと思います。(Ver 0.22 でもでてたっぽいです・・・。)
]]>2-5 の攻略動画は、実は前回投稿した 2014秋E-2 の動画の前に録画していたものなのですが、ちょうどイベント時期だったので先にイベント攻略の方の動画をあげてました。
2-5 の攻略は実は 10月に一回クリアしていたのですが、3-5 のときと同様に録画データが破損してしまっていたので、11月に取りなおしたというわけです。10月のときはこれ以上のベストはないだろうというぐらいこちらがほとんどダメージを受けず、ボス&随伴艦を殲滅したという上出来なものだったため、11月も簡単に行けるだろうと高をくくっていたのですが、恐ろしいぐらいの大破祭りで、イベント開始までに間に合うのかと思っていました。まあ何とか間に合ったわけですが・・・。
2-5 はルート上高い索敵値が必要なため、軽空母を2隻同伴させています。ただしあくまでも第六駆逐隊での攻略としたかったので、軽空母には攻撃はさせないようにしています。
]]>
ひさびさのちーたんつ~るず第2弾を公開しました。
Windows フォームカラーデザイナーは Windows フォームのコントロールの色を編集するためのツールです。元々は ToolStripManager の Renderer に設定する ProfessionalColorTable の色を作成するために作っていたのですが、そこからいくつか昨日を拡張したツールになります。
基本的な機能は各コントロールの色を編集して XML や CSV, プログラムコードなどにエクスポートするものとなっています。そんなに機能はないので使ってみたほうが分かりやすいかと思います。
ちーたんタッチボードの公開のときにも書きましたが、ちーたんつ~るずは「これ作ればたくさん使ってくれるだとう」とか「これは絶対ものすごく役に立つツールだ」というような考えて作ったツールではなく、「自分でたまたま欲しかった」とか「さすがにこれは使う人あんまりいないんじゃないか」的なものになっています。直感的に作ってみて、それなりに使えそうだったら公開してしまおうか、というような感じで作ったツールの集まりになるかと思います。
Windows フォームカラーデザイナーも利用者は「開発者」に限定されていますし、さらにその中でも「Windows フォームアプリケーション開発者」に絞られるかと思います (独自に色は作成できるのでその限りではないのですが)。それでも使いたい人が1人でも2人でもいるのであれば公開して使っていただくのもいいかなーと思ってます。
Windows フォームカラーデザイナーは以下のページで公開しています。細かくはないですが使い方とか概要なども載せましたので、使ってみたい方はダウンロードしてみてください。
]]>