> 「RegisterClipboardFormat」では、新しいデータ形式を登録するようですが、
> 「データ形式」自体分かりません。
RegisterClipboardFormat()関数は
CF_***っていう決まりきったフォーマットとは別に独自のフォーマットを定義する為に使います。
コード: 全て選択
' 独自のクリップボードフォーマット、HOGEを定義
Dim cf_hoge As DWord
cf_hoge=RegisterClipboardFormat("CF_HOGE")
あとは、
CF_TEXTを指定していた所を
cf_hogeにして、データ(とりあえず文字列)を格納するだけで良かったと思います。
> ただ単にマウスの右メニューで任意のファイルを「コピー」して「貼り付け」をする。
もしや、ファイルの絶対パス(単なる文字列)をクリップボードに格納して(コピー)、その格納された絶対パスを利用してファイルを「貼り付け」たいんじゃなくて、ファイルの絶対パスを取得する方法から知りたいんでしょうか?
そもそも、
単にマウスの右メニューで任意のファイルをコピーして貼り付けたいって、そのマウスはどこのファイルを参照すべきことになっているんでしょうか?(意味不明?)
生憎、ウィンドウズのマウスを乗っ取って(?)右クリックした場合に表示されるポップアップメニューを拡張する方法は分からないのでそこら辺は、お手上げなんですけど...。
あと、貼り付けるにも貼り付ける場所、対象となる絶対パスが必要になるんですよね。もしやその絶対パスの取得の方法も実装してないんでしょうか?
ジョンさんはファイラーを作ってるんでしょうか?例えば、リストビューにファイルが表示されてるとして、そのアイテムを右クリックした場合、ポップアップメニューを表示、その中の「コピー」っていう項目を選択されたときの動作を実装したいのであれば答えることが出来ると思うんですけど、ジョンさんがやろうとしていることがイマイチ分からないので無意味な回答になっているような気がします。
> 「コピー」だけはマウスを使わずにこの一連の作業を実現したかったのですが。
これも、失礼なんですけど意味不明な文章で、ハテナ、です...。
一度だけコピーして何度も貼り付けるってのはウィンドウズでも出来るし、...ハテナ。
コピーを選択した場合、設定されている場所(複数?)に自動的に貼り付けたいのか、ハテナ。
まぁまずはどういったソフトを開発しようとしているのか詳しくお聞かせください!さぁ!(ちょっとテンション高い)