StringGrid1.Cells[2,count]:=MD5File(StringGrid1.Cells[1,count],@StringGrid1.Cells[3,count]);
@StringGrid1.Cells[3,count]のところがエラーになる。なんでだ?StringGrid.Cellsって定数じゃなくて変数だろ?
StringGrid1.Cells[2,count]:=MD5File(StringGrid1.Cells[1,count],@hoge);
こんなのだとエラー出ない。(hogeはString型の変数)
関数の中でCellを書き換えたいから、ポインタで渡したいんだけど
unit test;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ToolWin, ComCtrls, Unit2; // Unit2 を手動で追加
type
TForm1 = class(TForm)
ToolBar1: TToolBar;
Button1: TButton;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private 宣言 }
testthread: ttest; //
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
testthread:=ttest.create(false); //
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Append(inttostr(testthread.count));
end;
end.
unit Unit2;
interface
uses
Classes, SysUtils; // sleep()を使うため SysUtils を追加
type
ttest = class(TThread)
private
{ Private 宣言 }
public
count: integer;
protected
procedure Execute; override;
end;
implementation
{ test }
procedure ttest.Execute;
begin
{ ToDo : スレッドとして実行したいコードをこの下に記述してください }
repeat
inc(count);
sleep(1000); // 時間の掛かる処理の代わり
until false;
end;
end.
Delphiでマルチスレッドの超単純な例。Unit2 はファイル-新規作成-その他-スレッドオブジェクトでクラス名 ttest として作った。
プログラムが起動すると、直ちにcountをインクリメントするスレッドが実行され、フォームのボタンを押すたびに、countの値を表示する。
これを応用すれば、時間の掛かる処理を別スレッドで実行して、進行状況とかをメインのスレッドから読み取ったりできそう。
最初、Delphiプログラマーズガイドの「マルチスレッドアプリケーションの作成」を読んでもよく分らなくて、Object Pascal 言語ガイドの「ユニットの構造と構文」と「クラスとオブジェクト」の項を読み直して、やっと書いた。
なんかすぐに忘れてしまいそうなので、ここに書いとくことにする。
sviutil なんとなく直した
11/4(木)19:25 からNHK教育で「未来少年コナン」がはじまる。何回も見てるけど、また見よう。
昨日、今日と雷がなんかすごいな
電源ランプが点灯していなかったら、電源スイッチを押して、電源を入れてください。
電源入れてくれてありがとうございました。kyoutan.dip.jpが復旧しました。
金曜からなんだかカゼひいて、具合が悪いんだけど、昨日一日寝て少し良くなった気になって、岐阜基地の航空祭にいってきた。
4:10出発。バスがまだ動いてないから、駅まで歩きで一時間。駅から電車に乗って、途中2回乗り換えて8:00くらいに到着。
天気も良かったし、航空祭の内容も良かったんだけど、岐阜基地って終日逆光なのね。写真がいまいちだった。
帰ってきたら、鼻水がたくさん出るし、なんか熱上がってきたみたい。もう寝る。
先週から、また kyoutan.dip.jp が落ちてる。また停電でもしただろうか?
起きた。雨だ。
浜松行くのやめることにする。駅まで一時間歩きだし。
二度寝して起きた。やっぱり雨降ってる。
岐阜は晴れてほしい。
あした浜松の航空祭だってのに、雨降ってるし…
サーバー復旧。木曜に停電があって、それから電源が落ちたまんまだった。電源を入れてもらって復旧。
復旧はしたけど、レンタルサーバが安いので(300Mで年間1,500円)移行する予定。
今日はdelphiで適当なプログラムを2本書いて、htmlファイルの変換してから、AirHでレンタルサーバへアップロードしてた。AirH遅いし切れるしつらい。
サーバーが落ちたまんま。レンタルサーバの申し込みをしてみた。http://kyoutan.jpn.org/uts/
もしかして、このサーバー落ちてるか?
ただいま出稼ぎ中
朝起きたら、雨で地面が濡れてる… 作業できない…
天気がよくなってきたので、午後から作業を再開。
プロペラシャフト付けて、下回り塗装して、マフラー付けて、エンジンマウント交換しようとしたら、排気管が邪魔でボルトが回らない。
エキマニと触媒の間のパイプを外して、エンジンマウントを交換。ex側のマウント排気管を外せば簡単に交換できたけど、in側のマウントはステアリングのシャフトやらスターターモーターが邪魔で外しにくいし、付けにくい。あーでもないこーでもないってやりながらやっと交換できた。
せっかく交換したエンジンマウントだけど、付いてたやつは別にひび割れとか劣化してなかった。クラッチも交換してあったようで、特別減ってなかった。でもなんでクラッチ滑ってた?
クラッチとクラッチカバーを交換する。これは簡単だ。
ミッションをジャッキで持ち上げて、取り付けようとする。入らない。2時間ほどがんばるがどうしても入らないので、いったんミッションを下ろす。午前はここで終わり。
午後から再挑戦。ミッションを持ち上げながら揺らしてたら、「スコンッ」と入った。よかったー
ミッションのボルトを締めて、PPFをつける。あとはマフラーを付ければ終わりだ。ここで塗装をするために、下回りを洗う。あ、プロペラシャフト付けるの忘れた。
PPFのカラーを六角形にグラインダで削ソケットで回してみた。いったん動くとドライバーを叩き込んでカラーを抜くことが出来た。やっとPPFが外れたー
PPFをはずしたら、ミッションを止めているボルトをはずして、揺らしながら引っ張ればミッションはすんなりと外れた。(ミッションの下敷きになるかとおもた)
フライホイールもはずして、クランクシャフトのリア側オイルシールを交換しといた。
フライホイールを元に戻して、今日は終わり。
ロードスターのクラッチ交換にとりかかる。
マフラーとプロペラシャフトはすんなり外れたけど、PPFとデフを結んでる前側のボルトの頭がつぶれていて回らない。グラインダで14mm角に整形してスパナで回したら、スパナが割れた。
こんどは12mmボルトの形にグラインダで整形して、ソケットで回したらやっと回った。
ボルトは外れたけどカラーが外れない。貫通ドライバーをハンマーで叩き込もうとしてもびくともしない。暗くなってきたので終了。
車の部品が入荷したので取りに行って来た。
リモートでメンテ出来なくなっていた、ここのサーバの保守。どうしてもログインできないんで(ブートローダのプロンプトが出ない)、サーバーのハードディスクを別のPCでマウントして修正した。とりあえず動作は正常になった。ついでにメンテ用に開放していた外部からのtelnetを禁止。今後外部からのメンテはダイアルアップで行うことになる。
エンジンマウントやら、オイルシールやらをディーラーで注文してきた。ラジエターのファンの値段を調べてもらったら、2万円以上するんでファンの注文は取りやめ。中古を探すことにする。
北海道も意外と暑かった。
仙台からフェリーで苫小牧に着いた。
ガスっててよろしくない。しかも暑いし。
プルーインパルスなんか2回航過しておわりだった。残念。
松島基地祭に向けて、ただいま移動中。
名古屋発の夜行バスが 21:30 出発なのに、名古屋駅に 16:00 に着いた。早すぎ。
ちょうど名古屋駅の近くに、ナムコがやってる漫画喫茶があったんでいまそこで涼んでる。ここ、地下にあるんだけど、AirH がつながったんで、据付の PC じゃなくて、自分の PC 使ってるですよ。
漫画喫茶ってはじめて来たけど、最初の一時間が 504円、その後15分ごとに84円で、空調完備、テレビ見放題、漫画読み放題、飲み物飲み放題で時間つぶすには大変よろしい。
{
ディレクトリのリストを取ってみるテスト。
とりあえず正常に動いているように見える
2004年7月18日
}
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ToolWin, ComCtrls;
type
TForm1 = class(TForm)
Memo1: TMemo;
ToolBar1: TToolBar;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function FindFile(PATH: string): string;
var
sr: TSearchRec;
FileList: TStringList;
begin
FileList:=TStringList.Create;
try
FileList.Clear;
if FindFirst(PATH+'*.*', faAnyFile, sr)=0
then
begin
repeat
begin
if not(sr.Name='.') and not(sr.Name='..')
then
begin
if not((sr.Attr and faDirectory)<>0)
then
FileList.Append(PATH+sr.Name);
end;
end;
until FindNext(sr) <> 0;
FindClose(sr);
end;
FileList.Sort;
finally
Result:=FileList.Text;
FileList.Free;
end;
end;
function FindDir(PATH: string): string;
var
sr: TSearchRec;
DirList: TStringList;
begin
DirList:=TStringList.Create;
try
DirList.Clear;
if FindFirst(PATH+'*.*', faDirectory, sr)=0
then
begin
repeat
begin
if not(sr.Name='.') and not(sr.Name='..')
then
begin
if (sr.Attr and faDirectory)<>0
then
DirList.Append(PATH+sr.Name+'\');
end;
end;
until FindNext(sr) <> 0;
FindClose(sr);
end;
finally
Result:=DirList.text;
DirList.Free;
end;
end;
function GetFileList(PATH: string): string;
var
FileList: TStringList;
DirList: TStringList;
count: integer;
begin
DirList:=TStringList.Create;
FileList:=TStringList.Create;
try
DirList.Clear;
DirList.Append(PATH);
DirList.Text:=DirList.Text+FindDir(PATH);
count:=1;
while count <= DirList.Count-1 do
begin
DirList.Text:=DirList.Text+FindDir(DirList.Strings[count]);
count:=count+1;
Application.ProcessMessages;
end;
dirList.Sort;
FileList.Clear;
for count:=0 to DirList.Count-1 do
begin
FileList.Text:=FileList.Text+FindFile(DirList.Strings[count]);
Application.ProcessMessages;
end;
finally
Result:=FileList.Text;
DirList.Free;
FileList.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
PATH: String;
FileList: TStringList;
begin
FileList:=TStringList.Create;
try
FileList.Clear;
PATH:='z:\';
FileList.Text:=GetFileList(PATH);
finally
Memo1.Text:=FileList.Text;
FileList.Free;
end;
end;
end.
指定したディレクトリ以下のファイル全部のリストを取ってくる関数を書いてみた。一応動いてるように見えるけど、数千のサブディレクトリがあるようなときは動作が遅い。メモリの確保と開放をバカみたいに繰り返してるから? それともこんなもん?
高速バス 名古屋 21:30→仙台 7:30 10,190円
JR 仙台→矢本 740円 松島基地に10時前くらいに着けるか?
太平洋フェリー 仙台 20:00→苫小牧 10:45 7,800円2等〜11,600円A寝台
松島の航空祭どうしよう。行けそうな気がするけど。
sviutil 直した
rstv: /bin/csh: No such file or directory
ホストとの接続が切断されました。
おい!...
まいった。sviutil のエクスポートでファイルが壊れる症状を確認した。きっと結合する順番がおかしくなってるんだ。こないだ順番のことぜんぜん考えんで改造したから。
しかし、テストしたとき、よく正常動作したなぁ
StringListだったっけ?memoでつかってるの、それにファイル名ためてソートしれ!
MD5のDelphiでのサンプルをみつけた(FDELPHI)ので、使ってみた。(プロジェクト za040708_MD5_test.zip)
[Delphi] Personal 版についてこないヘルプを手に入れるには
助かる。ドキュメントアップデートで、上位版のヘルプを持ってこえばいいんだ。
暗号っていうよりも、ハッシュ関数を調べてるんだけど…
sviutil でエクスポートするときに、ファイルを結合するようにした。
ServerSocket の Blocking モードの練習。なんだか FDELPHI のサンプルがそのまんまでは動かなかったんで、超単純化して試してみた。これを動かしておいて、IE とかで http://localhost/ にアクセスして、動作を確認する。
とりあえず動いてる。
NonBlocking モードで同じような動作を書くと、もっと簡単に書けたんだけど、まとまった量のデータを扱うときには Blocking モードを使うものらしい。正直、NonBlocking と Blocking をどう使い分けるのかよくわかってない。Personal 版には Socket のマニュアルが無いし。
Blocking だと、接続ごとにスレッドを作るから、処理を書きやすいって事かな。
まあ動いてるみたいだからいいか?
// ServerSocket の Blocking モードのテスト
//
// 参考
// http://www.ipc.hokusei.ac.jp/~z00104/delphi/
// http://forum.nifty.com/fdelphi/samples/00986.html
unit serversocket_test003;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ScktComp, StdCtrls;
type
TForm1 = class(TForm)
Memo1: TMemo;
ServerSocket1: TServerSocket;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ServerSocket1GetThread(Sender: TObject;
ClientSocket: TServerClientWinSocket;
var SocketThread: TServerClientThread);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
TMyServerThread = class(TServerClientThread)
public
procedure Execute; override;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
ServerSocket1.ServerType:=stThreadBlocking;
ServerSocket1.Port:=80;
ServerSocket1.Open;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ServerSocket1.Close;
end;
procedure TForm1.ServerSocket1GetThread(Sender: TObject;
ClientSocket: TServerClientWinSocket;
var SocketThread: TServerClientThread);
begin
SocketThread:=TMyServerThread.Create(false, ClientSocket);
end;
procedure TMyServerThread.Execute;
var
wsStream: TWinSocketStream;
sendstring: string;
readbuffer: array [0 .. 1024] of char;
readsize: integer;
begin
// スレッドが停止していない(not Terminated)
// and クライアントが接続している(ClientSocket.Connected)
// 間、繰り返す
while (not Terminated) and ClientSocket.Connected do
begin
try
// ソケットストリームをタイムアウト 60 秒で作成する
wsStream:=TWinSocketStream.Create(ClientSocket, 60000);
try
if wsStream.WaitForData(60000) then // データが来るまで60秒を限度に待つ
begin
// とりあえずクライアントからのメッセージを読む
readsize:=wsStream.Read(readbuffer, sizeof(readbuffer));
Form1.Memo1.Text:=Form1.Memo1.Text+#13#10+readbuffer;
// データを送信する
sendstring:='HTTP/1.0 200 '#13#10+
'Content-Type: text/html'#13#10#13#10+
'<html><body><h1>test</h1><p>test'+
'<p>'+TimeToStr(Time)+
'</body></html>'#13#10#13#10;
wsStream.Write(sendstring[1],Length(sendstring));
end;
finally
ClientSocket.Close;
wsStream.Free;
end;
except
HandleException;
end;
end;
end;
end.
実行した様子
火の鳥が今日で終わって、来週からポワロがはじまるそうだな。
んなもんやってる暇あるんなら、犬ホームズでも放送してろ! ってば
ファイルの転送とかってどうやるんだろう?と思って、とりあえず ServerSocket を使ってみた。動いてるけど、よくわからん。次はブロッキングだ。
参考
今週は苺ましまろをまとめて買ってきた
sviutilでソート出来るようにした。単純に文字列で比較してるから、日付や容量でソートすると結果がよろしくない。
けど、自分で使って不便はないのでこのままでいいや。
よつばと!を買ってきて読んだ。早く続き読ませろ!
sviutilのエクスポート処理を書き換えて分割ファイルに対応してみた。半年以上Delphi触ってないから、わけわからん。
AirH 切れすぎ! すざけんな!!
目の腫れ、引いてきた。よかった。
なんか昨日から右目にできものが…
雨だし…
つうか、昨日予行あったそうだし… 行っとくべきだった…
あした浜名湖でブルーインパルスの飛行があるんだけど、天気予報を見ると雨降りそう。雨でなければ写真撮りに行ってみようと思う。
休みだし、航空自衛隊浜松基地の広報館に行こうかと思ってたけど、朝起きたのが遅めだったんでやめた。今日は平日だから、T-4とか飛んでるかもなーと思ってたんだけど。あとE767も浜松だったっけ?
また今度行ってみよう。
AX10で録画したファイル、やっぱり直接 Windows Media Encoder で読めない。MPEG-2 Video Decoder を変えてみてもだめ。なんでかなー
TMPGEnc 2.5 でも対応してないって撥ねられる。TMPGEnc 3.0 XPress 体験版 では問題なく扱える。TMPGEnc 3.0 XPress はカット編集も出来るし、WMV9 での出力もできて便利そうなんで、製品版を買ってもいいかも? とりあえずしばらく体験版を使ってみよう。
こないだ中古でAX10を買った。で、やっと今日になってクロスケーブル買って来てPCと繋いでみた。
ありがたいことに、AX10って標準でsamba(たぶん)が動いてて、Windowsからsviファイルとm2p(mpeg)ファイルが見えるの。おかげで、sviutilがそのまんま使えた。便利だー!
と、思ったけどエンコードできない。コーデックが足りないと怒られる。困った。
再生は出来るには出来るけど、分割ファイルに対応してないから用をなさない(AX10は10分ごとに分割するみたい)。何が悪いのか? なんとかしたい。
土曜はいいな! 朝ケロロ見て、夕方カスミンとさくら見て
ウイルスメールがひどいな。土日は来なかったから、治まったのかと思ったら月曜になったらまた大量に来てるよ。
月曜になったとたんにこれだから、たぶん企業の端末が大量に感染してんだろうな。
ケロロ軍曹無駄に面白いな。来週も見よう。
2週間ぶりに、ネットに接続できるようになった。
いま、愛知まで仕事に来てる。
去年の10月から、ドスパラのTW-F128(シリコンオーディオプレーヤ)を使ってる。
wma再生でプチノイズが入ったり、電池少ないときにデータ転送するとファイル壊れたり、日本語タグが文字化けしたりするけど、なかなか気に入ってる。安いし(いまなら7,800円だ)。
で、これに入れてる曲が桃井はる子ばっかり。桃井はる子以外は、KOTOKO数曲と電気1曲だけ。どうしましょうか…
パソコン来た。
けっこう立派な箱だ
後ろは17インチCRT。CRTよりこっちの液晶のほうが幅が広い
ハードディスクは簡単に外せる。マニュアルには交換の方法が書いてあったりする
1,000円の増設256Mメモリも付けた。問題なし
FIVAとくらべてみる
一日ずっと、ソフトインストールしたりWindows Updateかけたりしてた。ISDN時間かかりすぎ。
11日に面接受けてきたとこから、採用通知っていうか出社のご案内も届いた。
ソースネクストの驚速DVDレコーダのダウンロード版を買ってみた(1,980円)
手持ちのDVDソフトで試してみたら、ちゃんとCSSのかかったDVDをAVIにできる。(そういうソフトなんだから、あたりまえだけど)
メディアプレーヤでは再生できるけど、エクスプローラのちっちゃい窓では再生できなくて、エンコーダでも読み込めない AVI ファイル。ヘッダが特殊なだけなのかなぁ?
おきらくに、DVCR→RIFF、AVE→AVI って書き換えてみても、だめだった。あしたヘッダを詳しく見てみようか。
ツクモから発送メール来た。
早くて金曜着ってとこだろうか。
劇場版のアニメらしいってうわさだけど… どんな映画になるんだ? つーかちゃんとまとまるのか?
いまごろになって gnudipc.pl を使ってみるメモ
まず、http://gnudip2.sourceforge.net/ からunix用のクライアントをダウンロードする。
%cd ~
%tar zxf gnudip-2.3.5-gdipc.tar.gz
とかやって展開
で、設定
%./gdipc.pl -c
Using Update Configuration Mode
Configuration file name: /home/uts/.GnuDIP2
Username: ********
Domain: dip.jp
Connect by direct TCP (d) or web server (w) [d]:
GnuDIP Server - host[:port]: ieserver.net
Password: ********
Cache File [/home/uts/.GnuDIP2.cache.kyoutan.dip.jp]:
Minimum Seconds Between Updates [0]:
Maximum Seconds Between Updates [2073600]:
設定終わり
%./gdipc.pl
とすると、更新される。いったんwebブラウザでオフラインに設定してからやってみて、ちゃんと更新されるか確認すると良い。
%./gdipc.pl -r
とするとオフラインにできる
さらに、アドレスが変わった時だけ動くように、適当にスクリプトを書いて
#!/bin/sh
#
adr=$(netstat -rn | awk '/default/ {print $2}')
# echo $adr
adr=$(/sbin/ifconfig | grep $adr | awk '{print $2}')
#echo "$adr"
cache=$(cat /usr/home/uts/ddns.cache)
if [ $cache != $adr ]; then
/usr/home/uts/gdipc/bin/gdipc.pl -f /usr/home/uts/.GnuDIP2
echo "$adr" > /usr/home/uts/ddns.cache
fi
exit 0
%crontab -e で
*/15 * * * * /usr/home/uts/ddns こんなふうに15分おきに実行するようにした。
gdipc.pl をデーモンモードで動かせば、勝手にやってくれそうな気もするんだけど、頭悪くてマニュアルをちゃんと読めないもんだから、適当にスクリプト書いたです。
ツクモでemachinesのノートパソコン M5307 を注文してしまった。(M5314は在庫切れで納期がかかりそうだったのでやめた)本体 129,800円
オプションで256Mメモリ1,000円、StarSuite 7 (OEMバンドル版)2,000円、延長保証5年 6,500円(本体の5%)も購入。OpenOffice.orgを使ってるから StarSuite は必要ないんだけど、安いから製品版はどんかかな? と思って試しに購入。延長保証はノートパソコンだから自分で気軽に部品交換して修理ってわけにはいかないのでつけといた。メモリはキャンペーンで安いから。
購入の決め手は、同価格帯(ローエンド)の他機種と比べて、メモリとハードディスクが大きいところと、画面解像度が高い所(この価格帯だと HDD 20〜40G、液晶1024x768が多い、これはHDD 60G、液晶1280x800)。サイズ的にデスクトップ代替ノートなので、バッテリなんかは考慮していない。
実は退職祝いだ
来週中に届くかなぁ
ロドースター用の安いリアスクリーン いいかもなぁ
へこんでるよー
直った
先週(2/29 午前4時ころ)雪山に突っ込んで車がへこんだとこを直した。形はまあまあ元に戻って良かったですよ。塗装の補修はあったかくなってからにしようと思う。面倒だからタッチペンで済まそうか…
結構派手に突っ込んだんだけど、外観はたいしたこと無くてよかったんだけど、ラジエタのファンが壊れてしまって、要交換。突っ込んだ時にエンジンルーム内に結構雪が入り込んだんだけど(氷みたいな雪)、これがラジエタのファンに当たって、モーターの軸が曲がってしまって回らなくなった、部品代いくらくらいするんだろか?
ハードディスクから異音出るようになってきた。早めに交換しなきゃなぁ
交換めんどくさー
自動車保険の継続手続きをした。
見積もりを取った中で一番保険料が安かった三井ダイレクトと、いま契約しているチューリッヒ(二番目に安い)のどっちにしようかかなり迷ったけど、結局チューリッヒで継続手続きをした。
デスクトップがつかえない環境になったら、とか考えてノートパソコンを物色してみたり。
ソフマップで ThinkPad X31 が139,800円だ。安い気がする。
emachines(ツクモ)のM5314 は 134,800円。
B5とA4ワイドだから、カテゴリはぜんぜん違うんだけど、この2台が気になるところ。
オープンソースソフトを“自社開発”と偽って販売。サポート作者丸投げ
こわいよー
キーボード掃除してみた。5年ぶりくらい?
なんか、14日午後から右足が軽くしびれてる。ずっと。右手も軽く。
まあ、いいけど。
前に自動車保険の見積もりをとたら(12月29日の雑記下のほう)、当選しましたって 500円のクオカードを送ってきた。
しかし、いきなり「おめでとうございます」って送ってくるのはあんまり良くないだろ? 一瞬なんかの詐欺かと思った。
OCRと翻訳と地図が届いた。8日注文、10日に発送案内が届いて、12日に到着。ふつうだね。
早速使ってみた。
本格読取通常パッケージ
OCRソフト。ためしに、Mazda Miata Mx-5 Eunos Roadster 1.6: Enthusiast's Shop Manual(英文)をスキャンして認識させてみる(400DPI 2値)。ヘッダとかの斜体文字はうまく認識されないけど、本文はかなりいい感じで読んでくれる。
このソフト、実態はパナソニックソリューションテクノロジーの読取革命Ver.7ってゆうんだけど、これみたいによそのちょっと古いソフトを、ソースネクストで安く売ってるシリーズはなかなかいいなと思った。
本格翻訳3(新価格版)通常パッケージ
翻訳ソフト。上で読み込んだ英文を翻訳してみた。エキサイト翻訳と大差ないように感じた。ただローカルで動く分、テキストファイルの一括翻訳なんかが使えて、使い勝手はまあまあよい。
無料のサービスと比べるから、厳しく評価したくなるけど、ふつうに1万円くらいで売られている翻訳ソフトと比べて劣るわけではないので、買い得ではある。
NEC製
ゼンリンデータコム デジタル全国地図スリムパッケージ
これは、ゼンリンデータコムがインターネット上で行っている地図サービスのクライアントソフトを1年間の使用権とセットしてソースネクストが売っているもので、サイトからダウンロードしたものと機能に差は無い。パッケージ版を買うと、販売店によっては値引きがある分すこし徳かもしれない。(ネットで使用登録する場合は値引きなく 1,980円)
地図データを都度ダウンロードしながら表示するので、基本的にインターネットに接続した状態でしか使用できないが、クライアントソフトでオフラインに設定することで、以前表示した分については、インターネットに接続していなくても表示はできる。
ISDN回線で使った感じだと、表示はまあまあ早く、無料の地図サイトを使うのに比べたらかなりいい。
ただどこでも見れる紙の地図と比べると… ツーリングマップルでいいやって感じもするか?
前述のサイトで、15日間無料体験版を利用できるので、実際に試してみてからお金払ったらいいね。
ソースネクストの OCR と 翻訳 と 地図 を注文してみた(全部1,980円)。無駄使いか?
翻訳ならエキサイト翻訳が無料で使えるのに… 届いたら使い比べてみよう。
ちょっと前に読んだ本。
マツダ/ユーノスロードスター日本製ライトウェイトスポーツカーの開発物語2シーター、FR、1ボディ、1エンジン、軽量 − そして「人馬一体」…。
時代遅れといわれても、クルマに乗ること、ハンドルを持つことをこの上なく愉しくさせてくれる、
そんなクルマ − LWS の復活に、逆風の中で挑み、
やがて世界を制することになる名車を開発した男たちの、真実の記録、
帯より
開発の経緯、苦労話なんかが、開発者による手記を中心に語られています。
シャシー/パワートレイン/ボディの開発のあたりの技術的な話題が特に面白かったです。
なんとなくソースネクストのwebサイトを3年ぶりくらいで見てみたら、前と比べてずいぶんと有用そうなソフトを安く出してんのな。感心してしまった。もう「ソースネクストがまた糞ソフト売ってます」とか言ってる場合じゃないってば。
で、そんな中に驚速 DVD ビデオレコーダーってのがあった、これが市販の(CSSのかかった)DVDビデオをDivXでエンコードしてAVI形式にするっていうソフトなんだけど、良くこんなモンを発売できるな。一応aviファイルは作成したPCでしか再生できないようになってるそうだ、どういう仕組みかはわからないけど。
でも再生できるんなら、wmvに再エンコードなんかもできるのか? 安い(1,980円)し買って試してみる?
あと、フォントも 1,980円で売ってたり、電子地図帳も 1,980円だったりで、ほんと感心した。地図帳のほうなんか、FIVA101 で実用になる速度が出るなら買いたいところだ(一応動作環境は満たしてる)。
Mydoom がうち(webmaster宛)にもたくさん来てるんだけど、その関連で…
「kyoutan.dip.jpからウイルスメールが来たぞ」というロボットからのメールも一件きてた。一応メールサーバのログを grep してみたけど、記録が残っていないので、偽装されたものと認識した。
そんなわけなので、対策はとらない。
2GB で 35,000円は高い。iPod miniは 4GB で 249ドル(27,000円くらい?)だ。サイズは大差無くて、iPod のほうが機能は上で安いんだから、アイワ(ソニー)これじゃだめじゃないか?
ところで、今月 iPod の 15GB モデルが値下げされて、31,800円になったんだけど、これは割安感があるなぁ。欲しい。
iPod が気になってるんで、iTunes をダウンロードして使ってみた。
すごく使いやすい。
なにより、リストからドラッグ&ドロップでファイルをコピーしたり、別のアプリケーションに渡したりできるのがいい!
ウインドウズメディアプレーヤではこれが出来なくて不便だった。ちょっとタグ書き換えたいなとか、ストレージデバイスとして認識するシリコンプレーヤにコピーするとかが出来なかったから。
録画してあった「なるたる」をいっきに見た。何が言いたいのかまったくわからんけど、とにかくすごい最終回だた。
これ地球的スケールの壮大な物語(オフィシャルサイトより)とは言わんだろ?
1/13から地上波(TBS)でもやるみたいだな…
君が望む永遠の最終話をみる。「ほんとうのたからもの」をバッサリ切ってるでやんの。盛り上がらんて。
mpeg2 ファイルの結合がしたくて、ファイルのヘッダがどうなってるのか調べてみたけど挫折。
copy /b 1.m2p+2.m2p 3.m2p なんてやってみて一応再生はできるから、2個目のファイルのヘッダを削除して、新しいファイルのヘッダの辻褄合わせすればいいんでないか? と思ったんだけど…
とりあえず、TMPEGEnc 無料版の MPEGツール で作業できたのでよしとする。
ホームセンターのちらしで、コンプレッサー25lタンク付きのが 10,000円で出てたんで買いに行ってみたら、売り切れだった。残念。
こないだ最終回だった、ダ・カーポ。録画してたけど見てなかったので、1話から通して見た。ヨカタヨ。
('A`)