私はpython3からメモ帳を開き、プログラムによって書き込まれたファイルへのファイルパスを取得する必要があります。ここで私が試したことがあります。メモ帳を開き、出力保存ファイルのファイルパスを検出します。
from subprocess import Popen,PIPE
import subprocess as sp
''
cmd = r'C:\path_to_notepad.exe'
p = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE,
universal_newlines=True)
stdout, stderr = p.communicate('\0\1\1')
print("stdout: %r\nstderr: %r" % (stdout, stderr))
if p.returncode !=0:
raise sp.CalledProcessError(p.returncode, cmd, output =
(stdout, stderr)
)
これが正しいかどうかわかりません。それはうまく開きますが、私は出力を得ることができません。 ありがとうございます。
メモ帳は標準出力に書き込まれません。それはファイルへの書き込みです。これを行うにはもっと良い方法がありますが、NtCreateFileシステムコールをインテルのピンのようなものでインスツルメントします。 –
上記のファイルはどのようにして見つけることができますか? – Jasong
だから私たちはそれをフックしますか?私はドキュメンテーションを探していますが、私はこれに慣れていません。これに関するお気に入りのドキュメントへのリンクを提供できますか? – Jasong