[英]how to let ruby call default browser to open localfile
在這個問題中 ,我發現使用system('start http://www.google.com')
是可以的。 但是,如果文件位於本地磁盤中,則使用system('start file:///c:/temp/a.html')
不起作用。 如何讓Ruby獲取默認瀏覽器以打開本地文件?
在Windows資源管理器中雙擊.html文件時會得到什么? 如果它不是瀏覽器那么那就是你的問題。 'start'關鍵字通過ShellExecute函數推送路徑,因為http:// URL知道在瀏覽器中打開它,如果它是一個文件,它取決於文件的擴展名,如果你的系統有.html指向例如記事本(因為在過去你已經將它設置為記事本)它總是會在該程序中打開它,除非你去並專門改變它。
從一般工作的角度來看,你可以做的事情並不多,如果你可以在Ruby下訪問Windows注冊表,那么你可以查詢HKEY_CLASSES_ROOT\\http\\shell\\open\\command
默認值,其中包含當前瀏覽器的命令行綁定到HTTP協議,您可以使用它來構造完整路徑(用URL字符串替換%1)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.