但是ie不是妳用php寫的,是微軟寫的。
如何控制壹個微軟寫的軟件,用它來選擇打印機?除非他提供接口。
微軟提供接口了嗎?我覺得不是,不然早就有人回復了。
但是還有另壹種可能性,當妳改變本地打印機的首選項時,它可能會被記錄在註冊表中。如果有,那就直接改註冊表,相當於選擇了打印機。
但是妳想,當妳瀏覽壹個網頁的時候,它會修改妳的註冊表,讓人不安。是病毒嗎,會被殺毒軟件屏蔽嗎?或者根本過不了ie的默認安全選項。
最終的結果是b/s模式不想控制客戶的硬件。
但我還是想打印。目前,客戶只能通過安裝打印控件來定制打印機。
另壹種思路是在沒有客戶端控制的情況下進行打印,將打印需求提交給服務器,讓服務器選擇打印機。為什麽不研究壹下?
另外php最多只能控制服務器的硬件,js最多只能控制客戶端。
對於客戶端的壹些打印選項的註冊表操作,這裏有壹些js用法的例子,很早以前的,僅供參考。
& lt腳本& gt
變量hkey_root,hkey_path,hkey_key
HKEY _ root = " HKEY _當前_用戶"
HKEY _ path = " \ \ Software \ \ Microsoft \ \ Internet Explorer \ \ page setup \ \ "
//將網頁打印的頁眉頁腳設置為空
函數pagesetup_null(){
嘗試{
var reg wsh = new ActiveX object(" WScript。外殼”)
hkey_key="header "
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key,"")
hkey_key= "頁腳"
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key,"")
hkey_key="margin_left "
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key," 0.2 ")
hkey_key="margin_bottom "
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key," 0.2 ")
hkey_key="margin_right "
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key," 0.2 ")
hkey_key="margin_top "
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key," 0.2 ")
}catch(e){}
}
//將網頁打印的頁眉頁腳設置為默認值。
函數pagesetup_default(){
嘗試{
var reg wsh = new ActiveX object(" WScript。外殼”)
hkey_key="header "
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key," & ampw & ampb頁碼,&;p/& amp;p”)
hkey_key= "頁腳"
RegWsh。RegWrite(HKEY _ root+HKEY _ path+HKEY _ key," & ampu & ampb & ampd”)
}catch(e){}
}
& lt/script & gt;
打印頁碼
& ltp style = " page-break-after:always " >page 1 & lt;/p & gt;
& ltp style = " page-break-after:always " >第2頁& lt/p & gt;