
こんにちは。よろしくお願いします。
現在、マルチPDFを『PaperSize.bat』にD&Dすると用紙サイズが
取得されるツールを使っていましす。
●PaperSize.bat
ここから-----------------------------------------------------
@echo off
set pathA=%~dp0
set pathB=\GetSize.csv
set pathAB=%pathA%%pathB%
"C:\Program Files\gs\gs9.21\bin\gswin64c.exe" ^
-q ^
-sFile=%1 ^
-dDumpMediaSizes ^
"C:\Program Files\gs\gs9.21\lib\pdf_info.ps" > "%pathAB%"
echo %ERRORLEVEL%
ここまで----------------------------------------------------
これを、PowerShellを使って実現しようと試みたのですが、
期待どおりに動きません。
●PaperSize.ps1
ここから-----------------------------------------------------
Add-Type -Assembly System.Windows.Forms
#サイズ取得
$tool1 = 'C:\Program Files\gs\gs9.21\bin\gswin64c.exe'
$tool2 = 'C:\Program Files\gs\gs9.21\lib\pdf_info.ps'
$Path0 = $MyInvocation.MyCommand.Path
$Path1 = Split-Path -Parent $Path0
$Path2 = "\GetSize.csv"
$Path3 = $Path1 + $Path2
$arg = $args[0]
& $tool1 -q -sFile= $arg -dDumpMediaSizes $tool2 > $Path3
ここまで----------------------------------------------------
PaperSize.ps1のショートカットを作って、プロパティのリンク先に
おまじないを追加して…
マルチPDFをショートカットにD&Dして動かしています。
CSVファイルは生成されるのですが、以下のメッセージとなってしまいます。
●GetSize.csv
>>showpage, press <return> to continue<<
どなたかお知恵を貸して頂けませんでしょうか。
No.2ベストアンサー
- 回答日時:
>-sFile= $arg
を以下のようにしてみては。
"-sFile=$arg"
$argに渡されたファイルパスがダブルクォートで囲まれてると、追加の対処が必要ですが。
No.1
- 回答日時:
osamuyさん、はじめまして。
ご回答、ありがとうございます。
& $tool1 -q -sFile= $arg -dBATCH -dNOPAUSE -dDumpMediaSizes $tool2 > $Path3
として実行してみましたが、以前と結果が変わりません。
記述が違うのでしょうか…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
Python... 環境設定 初心者です...
-
Google ColaboでGUI作成
-
google Colabでmatplotlibの描...
-
HTMLソースが表示のページのも...
-
Python 3.12.2 か一番最新のパ...
-
CSVファイルの複数行削除
-
画像生成AIのプロンプトの作り...
-
Webサイト内に埋め込んだmp4動...
-
【IT導入補助金は個人事業主や...
-
数学、プログラミング、物理、...
-
OS入ってる機器のソフト・アプ...
-
Pythonでの文字列からfloatへの...
-
VBAでパワーシェルを実行したい...
-
pip --versionがエラーになる
-
プログラミングに興味があるの...
-
アルゴリズムとコードとは何で...
-
Rでのデータフレーム作成について
-
Pythonのエラーメッセージをコ...
-
プログラミングのやり方ざっく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelマクロ 空白セルを無視し...
-
VBAでcsvファイルもシートもあ...
-
ダブルコーテーション付きでCSV...
-
【ExcelVBA】300万件越えCSVか...
-
ファイル名を変数で書きこむfwr...
-
VBAで複数のCSVからレコードセ...
-
CSVで余計な空行が入る
-
複数のファイルをまたぐエクセ...
-
VB.netでShellExecuteがしたい
-
LibreOffice Calcのマクロで、...
-
【C#】 csvファイルをバイナリ...
-
pythonでリストをCSVに出力する...
-
EXCEL→CSV保存時のダブルクォー...
-
PYthon Django csv関連
-
pythonについて質問です。 csv...
-
マクロで使うfor文
-
プログラムの間違いについて
-
Pythonのコードエラーについて...
-
Rubyを使用してcsvファイルを処...
-
CSVデータの文字列置換
おすすめ情報
あれこれ試してみると
& $tool1 -q -sFile= $arg -dDumpMediaSizes $tool2 > $Path3 を
& $tool1 -q -sFile=C:\Users\***\****\***.pdf -dDumpMediaSizes $tool2 > $Path3 と
-sFile= に直接パスを指定すると期待どおり動くことがわかりました。
ここにD&Dしたファイル名を指定したいのですが、記述がわかりません。
お分かりの方おりましたらご協力お願いいたします。