end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転しました

fuji xerox apeos port-v c7785 のプリンタinstallをdosのbatchで行う

以下のような感じかな?

※ driver自体は fuji xerox のサイトからダウンロードしてください

@echo off
set ip_addr=10.100.???.???
set dsp_name="TEST_PRINTER"

call %~dp0\common\AutoInstall.bat
@echo off

rem +------------------------------------------
rem + 管理者権限で実行していない場合は昇格
rem +------------------------------------------

net file 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto continue )
echo ***********************************
echo 管理者として実行して下さい!!
echo ***********************************
pause
exit /b 

:continue
pushd %~dp0..\

rem +------------------------------------------
rem + 印刷ポートを作成
rem +------------------------------------------
echo 1〜2分そのままでお待ち下さい...

set ip_port=IP_%ip_addr%
IF EXIST %SYSTEMROOT%\System32\prnport.vbs (
  set PRNPORT=%SYSTEMROOT%\System32\prnport.vbs
)
IF EXIST %SYSTEMROOT%\System32\Printing_Admin_Scripts\ja-JP\prnport.vbs (
  set PRNPORT=%SYSTEMROOT%\System32\Printing_Admin_Scripts\ja-JP\prnport.vbs
)

rem 既存設定を削除
rundll32 printui.dll,PrintUIEntry /q /dl /n%dsp_name%
cscript %PRNPORT% -d -r %ip_port% 1>NUL 2>NUL

rem ポート作成
cscript %PRNPORT% -a -s %computername% -r %ip_port% -h %ip_addr% -o lpr -q lp

rem +------------------------------------------
rem + プリンタドライバをインストール
rem +------------------------------------------
set name="FX ApeosPort-V C7785"

SET | FINDSTR /I ^PROGRAMFILES(X86) 1>nul 2>nul
if %ERRORLEVEL%==0 (
  set inf_path="x64\ART_EX\amd64\001\FXLH3JL.inf"
) else (
  set inf_path="x86\ART_EX\i386\001\FXLH3JL.inf"
)
rundll32.exe printui.dll,PrintUIEntry /if /f %inf_path% /m %name% /r %ip_port% /b %dsp_name%

rem +------------------------------------------
rem + 通常使用するプリンタに設定
rem +------------------------------------------
rundll32.exe printui.dll,PrintUIEntry /y /n %dsp_name%


rem +------------------------------------------
rem + 認証設定等(稀に失敗する)
rem +------------------------------------------
rem start common\property.vbs %dsp_name%


popd