リリースされたので早速アップデートを試みたのですが、Windows Vista の場合は3時間以上かかる場合があります、というリリースノートの警告通りでした。
しかも「インストールを検証しています」の後でエラーが発生してアップデートに失敗。
アンインストールして入れ直した方がいいかも知れません。
今年は8月からVistaに本格的に乗り換えようとして、苦労ばかりした1年でした。
さっさと XP にダウングレードすればよかったと後悔しています。
来年はもっと快適な仕事環境に恵まれますように。

リリースされたので早速アップデートを試みたのですが、Windows Vista の場合は3時間以上かかる場合があります、というリリースノートの警告通りでした。
しかも「インストールを検証しています」の後でエラーが発生してアップデートに失敗。
アンインストールして入れ直した方がいいかも知れません。
今年は8月からVistaに本格的に乗り換えようとして、苦労ばかりした1年でした。
さっさと XP にダウングレードすればよかったと後悔しています。
来年はもっと快適な仕事環境に恵まれますように。
先日 HP インクジェットプリンタ Photosmart A716を購入しました。
普段自宅では白黒のレーザプリンタを使っているので、写真や葉書を印刷できるコンパクトなカラープリンタが欲しいと思い、有楽町ビックカメラで選びました。
ところが、数枚の写真を印刷した後、葉書印刷のリハーサルをやろうとして普通紙を入れたら紙詰まりが起きて回復不能に。本体は低価格でしたが、すでにフォトペーパーやインクカートリッジに追加投資しているので、諦めるわけにもいかず、メーカーに問い合わせたら「クイックエクスチェンジ」で対応していただき、電話した翌日に宅配業者が来て代替品と交換してもらえました。
これからは気をつけて使いたいと思います。
Delphi 2007 の Indy コンポーネントを使い、ファイルを HTTP 経由でアップロードし、PHP5 でダウンロードする動作を確認しました。下記のサンプルをそのまま実行しようとしたら、PHP5 で動かなかったことと、Delphi 側も多少の手直しが必要でした。
<?php
$upload_dir = '/data/www/html/uploader/data';
$maxfilesize = 1024000; // up to 1MB
$send = $_POST['send'];
$userfile = $_FILES['userfile'];
$phpself = $_SERVER['PHP_SELF'];
if(isset($send)) {
if(is_uploaded_file($userfile['tmp_name'])) {
if($userfile['size'] <= $maxfilesize) {
if (move_uploaded_file($userfile['tmp_name'],
$upload_dir.'/'.$userfile['name'])) {
echo '<p>upload ok</p>';
} else {
echo '<p>upload error</p>';
}
}
}
}
?>
<form action="<?php echo $phpself; ?>" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $maxfilesize; ?>">
<input type="file" name="userfile">
<input type="submit" name="send" value="send">
</form>
Delphi の Form1 には IdHTTP1, Button1, Memo1 を貼り付けました。
implementation
{$R *.dfm}
uses IdMultipartFormData;
procedure TForm1.Button1Click(Sender: TObject);
var
ResponseStream: TMemoryStream;
MultiPartFormDataStream: TidMultiPartFormDataStream;
begin
MultiPartFormDataStream := TidMultiPartFormDataStream.Create;
ResponseStream := TMemoryStream.Create;
try
IdHttp1.Request.ContentType :=
MultiPartFormDataStream.RequestContentType;
MultiPartFormDataStream.AddFile(
'userfile', 'c:\test.jpg', 'multipart/form-data');
MultiPartFormDataStream.AddFormField('send', 'send');
MultiPartFormDataStream.Position := 0;
IdHTTP1.Post('http://server/uploader/’,
MultiPartFormDataStream, ResponseStream);
Memo1.Lines.Append('[upload ok]');
finally
MultiPartFormDataStream.Free;
ResponseStream.Free;
end;
end;
procedure TForm1.IdHTTP1Status(ASender: TObject; const AStatus: TIdStatus;
const AStatusText: string);
begin
Memo1.Lines.Append(AStatusText);
end;