掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
クリップボードの中身をバイナリレベルで書き換えるには? (ID:106451)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> VBではGetDataObjectメソッドで形式を指定して抽出する 以外にバイト配列を取り出す方法はないのでしょうか。 ですからAPIで…。 VBにかぎらず、Windowsや、その下で動くソフトはAPIを何度も使って動いています。 VBの各関数は、ほとんどがそれを簡略化しているに過ぎません。 (たとえばフォームは、本来CreateWindow APIを使って、何度も処理をした末に作成されるものです、 VBでは、フォームの作成と破棄を全部VB側がやってくれています) 上のGetDataObjectも、結局APIの呼び出しを簡略化しているだけではないか・・・と思います。 簡略化された動作は、応用の利くようにできてはいるものの、 『RPGツクールのコピーしたクリップボードデータを取得する』という方法には対応していないのだと思います。 ですから、そういうときには、"自分で1からAPIを使う必要がある"ということです。 ただし、VBはAPIの呼び出しを基本的には想定していないようなので、 APIを使っている最中に、VBの関数を使うようなことは、あまりしないほうがいいです。 ええと、0x0236(VBであらわすと&h0236)という情報が得られたのなら、 それを、GetClipboardData APIの引数に指定してみたらどうでしょう? もしうまくいけば、そのデータのハンドルが手に入り、結果、データを手に入れることができるはずです。 (何度もいいますけど、VBでポインタを扱う方法を、わたしはよく知りません、 できるとは思いますけど、もしできない場合は、他の言語でDLLを作って橋渡しするとか、 差し支えがなければDelphiやC言語でやったほうがいいです)
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.