2014年12月24日 星期三

Chrome Extensions的script injection


不知怎地GMail突然不能透過POP3收公司mail,測了一下Pchome及Yahoo卻可正常收公司信,為了統一在GMail收信只好對pchome web mail"注射"一下...

程式碼如下:
  • manifest.json 設定檔讓Chrome知道該何時啟動extension功能

{
   "content_scripts": [ {
      "js": [ "inject.js" ],
      "matches": [ "*://mail.pchome.com.tw/mailbox/*" ]
   } ],
   "description": "在pchome web mail收外部信,讓Gmail™可以收得到來自pchome 收到的外部信件。",
   "icons": {
      "128": "icon.png"
   },
   "manifest_version": 2,
   "name": "pchome收外部信",
   "short_name": "Auto sync",
   "update_url": "http://howard-xr1200.blogspot.com",
   "version": "1"
}

重點在content_scripts這段,js定義要執行的script檔名,matches比對載入頁面的url,符合才把script注入頁面。

  • inject.js 對pchome動手腳的 script


triggerInbox = function() {//取外部郵件
  var obj = document.getElementsByTagName("a"); //找到 pchome web mail 頁面中所有連結TAG<A>
  for (var i = 0; i < obj.length; i++) {
    if (obj[i].innerText.indexOf("howard_elinx") > -1) { //找到自己建立在 pchome web mail裡的收外部信件連結(howard_elinx)
      location.href = obj[i].href; //重新載入收外部信連結
      break;
    }
  }
};

document.onreadystatechange = function() {//頁面載完狀態更新
if (document.readyState == 'complete') {//狀態完成時
setTimeout(triggerInbox, 5 * 60 * 1000); //設定五分鐘後取外部郵件
  }
};


如果不丟上線上商店,要把以上二個檔案存在同一資料夾,到Chrome的擴充功能開啟開發人員模式,再載入未封裝擴充功能去選資料夾即可...

啟用我的pchome 自動收外部信功能

其實程式主要就是每五分鐘去點下圖中 "howard_elinx"這個連結,因為這個連結紅框中的key值會一直改變,所以才需要從頁面的<A>標籤下手,就這麼簡單 ...

pchome web mail 要先新增自己外部郵件連結

當然gmail要設定去收pchome的信,而且pchome web mail也要開啟放著,缺點就是下班後電腦關了手機就沒法同步收到公司的信,哦!! 不!! 這是優點 ...

2014年12月13日 星期六

小川柴爐首露@馬嘟溪露營基地


從日本網購回台的小川柴爐,這一年來都只有在家使用,這次堂妹幫忙載終於有機會露營使用,因為這次和阿弟幼兒園同學共六頂帳一起,太多小朋友所以柴爐只好躲有邊邊角烤烤地瓜取取暖 ...
柴爐終於有機會參加露營
小朋友都愛玩火

現在車子的安全機制一定要作到這麼機車嗎!? 隔天全部裝備上車後,阿弟不知怎地惹惱了他哥追著要扁他,只好逃上車上中控鎖避風頭,風頭過後又從駕駛座下車悄悄地關門,因上鎖後再開鎖這時"聰明"的行車電腦就開始計數(N秒),沒人再開車門或遙控開鎖就認為車子有被侵入風險,於是就自動上鎖,好死不死老婆早上開車門後就把鑰匙放在口袋的外套也被丟進車裡;急扣鎖匠說晶片鎖的車開不了,營區老闆帶了把L尺來幫忙,不過也無法像以前哪樣勾得開鎖,人在苗栗山上回台北拿備用鑰匙也不可能,因為家門鑰匙也在車上,最後只好選了個最小的三角窗下手,聽說BMW的三角窗比門窗還貴,還好我們只是韓國車;回程五楊上的冷風一直灌進來,吵死人的風切聲也沒停過,還好沒下雨 ...

自砸車窗

這一筆當然也要記在阿弟身上(老婆也有份拿走鑰匙沒還我,哪就幫阿弟分擔3成罪行吧),阿弟目前已作掉大白二塊玻璃了 orz ...



這三角窗原來不是只要割塊玻璃來換這麼簡單,它是含框整組換且是黏死在車體上,問了保養廠並沒有備料要向韓國調貨,哪就來土砲吧 ...
利用下班時間慢慢清碎玻璃
想說壓克力比玻璃好加工而且多色可挑,游標卡尺量三角窗玻璃厚度是3.5mm,於是就到吉林路壓克力專賣店挑塊3mm厚的藍色壓克力,因為再上去就5mm怕太厚裝不上去;別小看這塊小小的三角窗,光要把它從車上取下又不破壞外框足足花了我三個晚上,每天大約花二小時,弄壞三把刀片,才終於把膠解決掉(大部份)取下三角窗;接下來更機車的是黏在外框上的碎玻璃,也是搞了三天才清乾淨;最後先將壓克力黏上車體等乾了再把外框黏在壓克力上完工 ...

完成品,改成藍色壓克力三角窗

2014年12月6日 星期六

煤油暖爐首露@松濤意境

這幾天天氣較冷剛好可以試試煤油爐當暖爐的效果,晚上很凍炊事帳四面邊布都包起來內外就有差了,再加上煤油爐提升一點溫度勉強可用,順便還可以燒點熱水來洗碗;訝異的是備用的煤油都沒用到,0.8公升燒了二晚還有剩,看來一壼真的可以撐5小時,不過我燒了一小時後壼身開始會燙手就會停十幾分讓它冷卻,不然怕怕的...

第二晚燒了一小時多爐頭開始冒紅火,發現是爐頭下方竄出,不知是不是燒太久熱漲冷縮造成爐頭焊接處漏氣!? 只好熄火有空再檢查了 orz ...
小朋友愛玩火,眼睛一刻都不能離開他們

愛串門子的老婆在露友帳內紅酒一杯一杯乾,酒力開始作用,晚餐全還給大地了,半夜還起來吐了二次,隔天酒醒說她再也不幹這檔事了 !?
有人在抓兔子

多待一天到星期一,人少才叫露營咩

蜜蜂很多比個蓮花指牠就下來採蜜了

哥哥抓到的大眼仔
隔了三週終於有空來處理汽化爐漏氣問題,其實之前回到家就先測過,發現是爐頭預熱盤接合處的墊片問題,其中一個O型環才拆下就碎裂好幾塊,隔天上班前先到承德路找過是否有通用的墊片,不過殘念,老闆有建議自己土砲來搞,所以就花了20元買了這塊可耐熱300℃左右的石棉墊片自己加工,先裁了二個裝上爐頭試點火OK不再漏氣,反正手都髒了再多裁二個作備用 ...
最上頭哪個O型環是原廠墊片

2014年11月23日 星期日

琪琪的狗窩( 狗屋DIY )

自從琪琪車禍後就一直讓她住在車庫裡,不過老媽還是希望琪琪能有一間自己的房子;工欲善其事必先利其器,所以就到BNQ弄了把圓鋸,開始當木工;至於材料都是十年前家裡裝璜用剩以及老婆工廠廢棄不用的棧板 ...
琪琪正在"幫忙"啃木頭...

主體架構

小朋友來幫琪琪新家上色


2014年10月25日 星期六

秋天記事


為阿嬤慶生
阿弟選給阿嬤的蛋糕
媽媽的孩子永遠長不大
上鋼琴課前先餵飽肚子

琪琪被車撞斷腿
正在動刀的琪琪
琪琪開刀一週後能漫步出來曬太陽,抓了隻螳螂陪她
專程來到南庄桂花園看小貓
去南庄的路上大白收集到五個8

2014年10月24日 星期五

第八高峰(MANASLU 126 煤油汽化爐) 參上

馬納斯盧峰(MANASLU)位於喜馬拉雅山脈中段尼泊爾境內,海拔8仟公尺以上,是世界第八高峰,由日本人首先攀登攻頂成功。

繼上次樂淘日本代購(小川柴爐)後,時隔一年再次進入冬天,忍不住又訂了個煤油汽化爐,不過不是心儀的武井501A或301A,而是MANASLU 126煤油汽化爐及加熱器(當暖爐使用),含日本空運回來費用7000元台幣還找33塊,且不到一個禮拜就到貨了,網路加上四通八達物流網果真害人不淺啊~~~
題外話:原本還擔心汽化爐上不了飛機要走海運,看來只要是新品未裝填或殘留油料的還是能跑空運,不需苦等一個月 ...

從日本飛來的全部就這些

狂暴型爐頭,聲音真的很大

壺身

註明來處


第一次點火,還算順利

架上加熱器,今天不冷試不出效果

燃燒時發出的吼聲真的不小,如果半夜拿這個爐來煮東西肯定會被揍;第一次點火加熱器一架上爐子,金屬上的油膜燃燒發出異味立刻就把阿嬤和阿弟燻跑了 orz...

老婆不在家,剛好煮泡麵試一下 ...

2014年10月9日 星期四

懶人script

最近在寫一些php因為本機端跟server端的環境有點差異,所以常常 local測完放上server跑不動,熟vi當然就直接ssh連進去寫,不過跟vi真的不太熟,我還是喜歡eclipse的IDE環境;為了省卻coding完開winscp上傳,再開 chrome看測試結果不斷重複的動作,弄了一個批次檔及VBScript,這樣在改好程式儲存後只要點二下同專案裡的upload.bat (感覺就像整合在IDE一樣),就會上傳並自動叫起chrome作重新整理,少一些人為疏失,也讓懶人少點幾下滑鼠 ...


  • 批次檔 (upload.bat)

Set PROJECTDIR="D:\workspace\TestPHP"

path "c:\program files\winscp"
winscp.exe /console /command "option batch abort" "option batch on" "option confirm off" "open sftp://user:password@server" "cd /var/www/html" "put %PROJECTDIR%\*.php" "exit"
actAPP.vbs "google chrome"

主要是上傳是透過winscp,它指令google大神會告訴你詳細,我只用到以上幾個就不說明了;
actAPP.vbs是要叫起chrome的script 如下,有二種寫法不過 tasklist的方式單獨執行actAPP.vbs正常,但是經由批次檔去呼叫就無法取到 tasklist,找不到原因 orz...


  • VBSscript (actAPP.vbs) 

Set objShell = CreateObject("Wscript.Shell")
Set objWord = CreateObject("Word.Application")
Set tasks = objWord.Tasks
Set res = WScript.Arguments
Dim app_name
'取得代入的參數(WINDOWSTITLE 視窗標題,工作管理員->應用程式 看到的名稱 )
app_name= "google chrome"
If res.length > 0 then
  'MsgBox("test_" + cstr(res.length))
  app_name = res(0)
End If

For Each objTask in tasks
  strName = LCase(objTask.Name)
  If Instr(strName, app_name) Then
    WScript.Sleep 500
    objShell.AppActivate strName ' 把已開啟的視窗叫到最上層並Focus它
    WScript.Sleep 500
    objShell.SendKeys "{F5}" ' 送一個重新整理的指令
    Exit For
  End If
Next

objWord.Quit



  • VBSscript (actAPP.vbs) 原本想用tasklist取得目前執行中的程序,這方法感覺比較正統,不過透過批次檔呼叫就會失敗
Set objShell = CreateObject("Wscript.Shell")
Set res = WScript.Arguments
Dim app_name
'取得代入的參數(IMAGENAME 執行檔名)
app_name= "chrome.exe"
If res.length > 0 then
  'MsgBox("test_" + cstr(res.length))
  app_name = res(0)
End If
'MsgBox(app_name)

'組 tasklist 指令過濾只取執行中程序
strCommand = "cmd /c tasklist /V /FO ""LIST"" /FI ""IMAGENAME eq " & app_name & """ /FI ""STATUS eq RUNNING"" | sort"

Set objExecObject = objShell.Exec(strCommand) '執行 tasklist
'MsgBox(objExecObject.StdOut.AtEndOfStream)
' 解析 tasklist 輸出的 "LIST" 資料
Do While Not objExecObject.StdOut.AtEndOfStream
  strText = objExecObject.StdOut.ReadLine()
  'MsgBox(strText)
  If Instr(strText, "PID") Then
    a=Split(strText, ":") ' 取得符合的 PID
    WScript.Sleep 500
    objShell.AppActivate a(1) ' 把已開啟的視窗叫到最上層並Focus它
    WScript.Sleep 500
    objShell.SendKeys "{F5}" ' 送一個重新整理的指令
    Exit Do
  End if
Loop

2014年9月12日 星期五

三天二夜露營@得碇休閒山莊

老婆想要星期五晚上就上白蘭部落,剛好星期四晚上人不太舒服就決定星期五請一天假,白天在家休息,下午往新竹出發露營去 ...

五峰鄉深山裡的張將軍故居,有溫泉可泡腳,不過天黑後就趕快離開,當地人都會跑來這洗露天澡(new one 的紫光愈來愈嚴重)
從張學良故居開了廿分鐘來到海拔1200的營地,只有我們(另二頂半夜才到)
最近迷上UNO牌的小朋友,每次都輸他們 ...

清晨的山巒
半夜到先隨便搭的左右鄰居

一桌子的好料,這像露營野炊嗎!?

鄰居的屋頂昆蟲很喜歡

2014年9月7日 星期日

琪琪愛玩水@綠野山林

隔了一週我們又來了,但這次不是露營就純玩水,順便也帶琪琪來玩水 ...

下午離開坪林就跑去礁溪吃海產兼泡腳,快八點要上國五時發玩完蛋了,整個交流道周圍完全塞死,亂繞了幾圈最後放棄走濱海,原本還打算到基隆吃個宵夜,不過小朋友跟琪琪才過北關就全進入夢鄉,所以就直接打道回府 ...

琪琪第一次游泳,水花四濺,背景的米大都快看不見了
泳技不佳,哥哥你先借我扶一下
知名部落客的敬業態度,玩水不忘寫測試文

阿弟和萱萱還真有聊


琪琪上岸幫阿嬤涼一下

琪琪和阿威有點混熟了
阿威能優雅地像鴨子划水般悠游,牠還會潛水撿石頭才厲害,琪琪在他面前完全弱掉了(本來就超弱) ...