喫茶XRAYトップページ

[スレッド全体
]

[1550] Re3:TWebBrowserでローカルPCのフォルダ内表示返信 削除
2008/2/14 (木) 15:29:28 宮 〔HomePage
▼ Mr.XRAYさん
> 一応やってみました.
>
> (1)Button1クリックでフォルダ内のファイルをアイコン表示
>    アイコン表示しかできないようです.
> (2)SpeedButtonクリックで選択ファイルのファイル名をMemo1に表示
> (3)ファイル上のマウス右クリックで,選択ファイルをMemo1に表示



Mr_XRAYさん、皆さんありがとうございました。
亀レスですみません。
本当に、難しいとはココに限ります。DelphiQ&Aではとてもココまで
追求は出来なかったでしょう。
感謝します。

アイコンをコンテキストメニューの代わりに右クリックで
ファイルバスを取得して、自分の指定したビューワーに表示したいですから
番号でいえば(3)になると思います。

ぼ〜っとしていたわけではありませんで、自分の知識レベルでは
途中経過では、ついて行けないので、傍観させて頂いていました。

それと、私の既存のプログラムにファイルコピー、削除、移動
コンポーネントにSHFILEOPSTRUCTを使っていましたが、
CPU負荷が大きいのとリソースを食うので、
使いやすい?ようにしたShfOperationコンポーネントに切り替えていましたが、
このコンポーネントのバグ(仕様かも)
を発見しまして、大変だと、その再現テストと修正、検証を夢中でやっていました。

長文になりますが、かいつまんで書きますと、
コピー先に同じファイル名で更新日が新しいファイルがあった場合
コピー元ファイルが同じ名前で更新日が古い場合、
ファイル名に日付文字列を付けて名前変更してコピーするとき

ShfOperationは、名前を変更できないでコピー〜を勝手に付けてコピーするが、
SHFILEOPSTRUCTは、正常に名前を変えてくれてコピーできる。
例とコード(略)

FromFile         D:\マイ ドキュメント\Temp\aaa.txt (2005/10/01/ 12:35)
ToFile(コピー先)D:\pppppp\aaa.txt(更新日 2008/02/14/ 20:15)
ファイル名を変更する。
  //SearchRec.Timeは検出した aaa.txtの 更新日2005/10/01 12:35.
 yyyymmdd:= FormatDateTime('yyyymmddhhnnss', FileDateToDateTime(SearchRec.Time));
 ToFile2:=D:\pppppp\aaa.txt; ←最初予定したコピー先ファイル名,これを変更する
 LastDelim := LastDelimiter('.', ToFile2);
 Insert( '['+yyyymmddhhnnss+']', ToFile2, LastDelim);
 ToFile:=ToFile2;
 
 ShowMessage(ToFile);→(D:\pppppp\aaa[200510011235].txt)

        ForceDirectories(ExtractFilePath( ToFile));

        ShfOperation1.OperationF:=foCOPY;
        ShfOperation1.Options.RENAMEONCOLLISION:=true;
        ShfOperation1.Options.NOCONFIRMMKDIR:=true;
 
        ShfOperation1.FromFFList.Clear;
        ShfOperation1.FromFFList.Add(FromFile);
        ShfOperation1.ToFolder:= ExtractFilePath( ToFile);
        ShfOperation1.ToFiles.Add(ToFile);
        ShfOperation1.Execute;
コピー 〜aaa.txtになる。




[1553] Re4:TWebBrowserでローカルPCのフォルダ内表示返信 削除
2008/2/14 (木) 23:38:13 Mr.XRAY
▼ 宮さん

お疲れさまです.

> 本当に、難しいとはココに限ります。DelphiQ&Aではとてもココまで
> 追求は出来なかったでしょう。


そんなことないと思いますけど.
ただ,ここは雑談系なので,レスする私も,特に解決レスでなくとも,取り敢えず
レスする,という軽い気持ちで反応できますから.
一方Q & Aの方ですと,やはり構えてしまいます.
Q & Aでの質問では,こちらも質問という状態で読みますから,環境とか状況説明
に不足があると,
「もっとわかりやすく書けないのかよ?」
と思ってしまいますが,ここでの質問の場合,別にそういう精神状態にはなら
ないから不思議です.やりとりしながら聞いていけばいいやと.

もちろん,Q & Aも個人の方が運営されているわけですが,多くの人が訪れている
ことから,公的な要素があるようにも思います.

情報の有効利用という意味では,ここよりも Q & AとかDelphi談話室,
あるいはMLの方が,プログラミング関係はいいのでしょうけど.
それに,知識がある方が閲覧している可能性がはるかにあります.

まっ,でも堅いこと言わずに...
ここでダメだったら,他で質問しなおすとか...
解決をお急ぎの方の質問は,ここはでは無理があるでしょう.多分.
寒村の片隅の小さな,さびれた喫茶店でごさいますよ.ここは.(^_^;)

# そう言えば,プリンタの質問のところでDEKOさんが怒っているみたい.
# (^O^) (不謹慎!?)

[▼次のスレッド]
INCM/CMT
Cyclamen v3.82