2

プログラミング クラスの学校プロジェクトの一環として、Windows 用の Turbo Pascal 7 でプログラムを完成させています。

簡単な説明では、ユーザーがメッセージを入力し、文字シフトを選択すると、各文字がそのシフト (基本的に ROT13) に従って「暗号化」されるプログラムを作成することが述べられています。簡単。

Turbo Pascal for Windows 7 ターミナル ウィンドウで実行すると、暗号化されたテキストが出力されます。

writeln('Encrypted message is ', line ,' for a shift of ', shift);
readln;

私がやりたいことは、さらに一歩進んでこれを超えて拡張し、ユーザーが出力 (var: 行) を Windows クリップボードにコピーできるようにすることです。私は 2 日間、インターネット全体を広範囲に検索してきましたが、私を助けることができるものをまだ見つけていません。私は今、パスカルにこれを行う能力さえあるのだろうかと考え始めていますか?

乾杯、ルーク。

4

3 に答える 3

3

私は今、パスカルにこれを行う能力さえあるのだろうかと考え始めていますか?

その時代遅れの 20 年前の Pascal 製品を使用しない場合は、はい。クリップボードにアクセスできるかどうかはわかりませんが (Windows のクリップボードは 32 ビット API であるため)、少なくともハックなしではアクセスできない可能性が高くなります。Free Pascal または Delphi を使用し、Windows API に直接アクセスしてクリップボードを操作します (MSDN で検索してください)。

PS: クリップボードは言語としての Pascal とは何の関係もありません。それは単にOSが持っている概念であり、プログラムがそれを使用できるようにします.

于 2012-03-02T06:58:15.403 に答える
2

まず、結果のバイナリは DOS または win3.x EXE ですか?

DOS Afaik の場合、INT 2F 拡張を介して DOS からクリップボードに到達する方法があります。

Turbo Pascal (および Windows 用) の例が山ほど含まれている大規模な SWAG アーカイブを検索します。

win3xなら

http://www.programmersheaven.com/mb/pasprog/420895/420895/use-of-windows-clipboard/

この回答が非常に漠然としているように聞こえる場合、これはすべて 20 年前のことです :-)

于 2012-03-02T10:00:44.453 に答える
2

Delphi を使用していた場合は、Clipboard.SetTextBuf(PChar(somestring)); を使用できます。これは Dos2Clip ユーティリティで行う方法で、2005 年に無料で公開したようです。以下のリンクからソースを入手できます。25 行すべてです。;)

Vista 以降では、バッチ ファイルまたはコマンド ラインで使用できる「クリップ」コマンドがあります。

例: echo "hello, world!" | | クリップ

私の Dos2Clip プログラム (ソース付き) のダウンロード リンクがある私の記事を参照してください。Clip2Dos もそこにあるようです。

http://www.clipboardextender.com/general-clipboard-use/command-window-output-to-clipboard-in-vista

于 2012-03-02T15:04:02.363 に答える