質問: VBからのLPR印刷 LPR印刷行うバッチを作成しましたが、 VBから起動して印刷されません。 コマンドから起動すれば正常に印刷されます。 バッチファイルを起動した場合も印刷されます。 VBソース Shell ("lpr.bat") ファイルの内容(ファイル名: lpr.bat(実行ファイルと同フォルダに配置)) C:\Windows\System32\lpr.exe -S xxx.xxx.xxx.xxx -P printer -ol c:\test.html ※サーバ指定は自分のローカルマシーンを指定しております。 実行時にプロンプトを表示させたままにすると、 「'C:\Windows\System32\lpr.exe'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。」 となります。 VBからlprを起動し、印刷したいのですが、何か方法はありませんでしょうか? OS:Windows 7 Professional(64bit) 開発環境:sharpdevelop4.3 知識不足で申し訳ないですが、宜しくお願い致します。
回答: 64bit 版の Windows では、以下のディレクトリが存在します。 * C:\Windows\System32 ... 64bit アプリ用 * C:\Windows\SysWOW64 ... 32bit アプリ用。32bit アプリからは「C:\Windows\System32」として認識される。 恐らく「lpr.exe」が 64bit 版アプリな為、32bit 版の VB のプログラムから「C:\Windows\System32\lpr.exe」 を呼び出したつもりでいても、実際は「C:\Windows\SysWOW64\lpr.exe」を探しに行き、「見つからない」というエラーになっているのだと推測されます。 > <参考情報> > ■ x64版Windows上でバッチファイルをx86起動する方法 - Kerosoft : Modus Operandi > > >