2011年9月7日星期三

firefox portable 設為預設瀏覽器

下載registerfp_1_1
直接執行 RegisterFirefoxPortable.exe
指定 firefoxportable.exe 的路徑後按 register
接下來到控制台→預設程式→設定您的預設程式
左邊的程式集應該有一個Mozilla Firefox, Portable Edition
選完之後再按右下的將此程式設定成預設值
結束

參考資料
http://blog.joaoko.net/archives/1136

office 2010 無法開啟文件中的超連結

症狀
當您按一下 Microsoft Office 系列文件中的超連結時,可能會收到下列錯誤訊息:

這個作業已經被取消,因為這個電腦受到限制。請和系統管理員連絡。

解決辦法
下載安裝以下檔案即可
https://skydrive.live.com/redir.aspx?cid=D8886C4D9F3176AA&group=0&resid=D8886C4D9F3176AA%211282

參考文件
http://support.microsoft.com/?kbid=310049#fixit4me

2011年4月9日星期六

win 7 下 VPN 無法建立連線問題

問題描述:

原本使用win7連到學校的VPN都很正常,但是不曉得為什麼突然不能連線了,所得到的錯誤訊息如下
"nc.windows.app.23712. The Network Connect session terminated.  Do you want to reconnect?"
而學校使用的連線系統為juniper network,這個錯誤訊息也是該系統發出的。

之前使用免費VPN軟體 Hotspot Shield 能夠順利連線,但是也突然不能使用了。

解決方案:

請參考以下連結
http://kb.juniper.net/InfoCenter/index?page=content&id=KB14270
該連結內容提到windows 中有所謂的media sense 功能,可能造成此種連線錯誤,因此只要將此功能關閉即可。

文中敘述的方法只能適用在win xp,對win 7來說是無效的*,因此又再搜尋其他解法,發現在win 7下要關閉media sense 必須依照以下步驟**:

1. 開始按鈕
2. 在搜尋列中輸入cmd
3. 右鍵點擊cmd 選擇"以系統管理員身分執行"
4. 分別輸入以下指令
netsh interface ipv4 set global dhcpmediasense=disabled
netsh interface ipv6 set global dhcpmediasense=disabled
5. 分別輸入以下指令檢查狀態

netsh interface ipv4 show global
netsh interface ipv6 show global

若在 DHCP Media Sense 這一項的狀態顯示為disable,則表示操作成功。

6. 重新開機

現在應該可以順利連線VPN了。(測試過台大、師大,以及免費VPN:Hotspot Shield)


p.s. 關閉media sense 之後,可能會造成無線網路無法自動連線,甚至在改變網路環境之後無法順利偵測到網路,因此若VPN確定可以連線,即可將media sense 開啟,將狀態設為enable即可。


*[http://blogs.technet.com/b/nettracer/archive/2010/06/03/some-notes-about-disabledhcpmediasense-behavior-on-windows-vista-2008-windows-7-and-2008-r2.aspx]

**[http://answers.microsoft.com/en-us/windows/forum/windows_7-desktop/how-to-disable-media-sense-in-windows-7/18277955-3f2c-4328-bd87-d3567579b645]

2010年10月29日星期五

在blogger中加入facebook 留言板及"讚"按鈕

到這裡為你的網站申請一個facebook app

http://developers.facebook.com/setup/

記得記下應用程式ID(app Id),如果忘記,可以到這裡查看

查看我的應用程式

到blogger控制介面,進入 設計>修改HTML,勾選"展開小裝置範本",在程式碼區域搜尋 <body ,在其下面一行加入

<div id='fb-root'/>
<script src='http://connect.facebook.net/zh_TW/all.js'/>
<script>
  FB.init({appId: 'your app id', status: true, cookie: true, xfbml: true});
</script>

此行作用為初始化Javascript SDK library,以便使用XFBML標籤。其中紅色字體部分之your app id,請改成自己的appId;黃底部分之zh_TW可以改成自己慣用語言。參考:FB.init

找到黑色部分程式碼並在底下加入紅字部分

<b:includable id='comments' var='post'>
<div class='comments' id='comments'>
<a name='comments'/>
<b:if cond='data:post.allowComments'>
<h4>Facebook留言板:</h4>
<fb:comments numposts='10' width='500'/>

numposts 為每頁顯示篇數,width為寬度,參數部分請參考:Comments

搜尋 <data:post.body 在其下面一行加入

<fb:like expr:href='data:post.url'/>

其中expr: 可將'data:post.url' 轉成每一篇文章網址,效果就如同直接在href= 後面加上一般網址。參考:Like Button

其他外掛請參考:Social plugins

參考資料:
查看我的應用程式
How to Add Facebook Social Plugin to Blogger in Three Steps
在 Blogger文章加上Facebook留言功能-Part 2
在Blogger文章加上Facebook留言功能
Facebook for Websites

2010年10月9日星期六

在blogger中加入facebook"讚"按鈕

首先,到facebook官方網頁
http://developers.facebook.com/docs/reference/plugins/like
底下有個設定欄位,設定好之後按下Get Code,就會產生如下程式碼:

<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fexample.com%2Fpage%2Fto%2Flike&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>

將之轉換成HTML代碼

&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fexample.com%2Fpage%2Fto%2Flike&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=450&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;height=80&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:450px; height:80px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;

然後把http%3A%2F%2Fexample.com%2Fpage%2Fto%2Flike刪掉,改成<data:post.url/>

&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=<data:post.url/>&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=450&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;height=80&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:450px; height:80px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;

使用javascript 中的document.write()方法包起來,得到:

<script>
document.write('&lt;iframe src=&quot;http://www.facebook.com/plugins/like.php?href=<data:post.url/>&amp;amp;layout=standard&amp;amp;show_faces=true&amp;amp;width=450&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;height=80&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;border:none; overflow:hidden; width:450px; height:80px;&quot; allowTransparency=&quot;true&quot;&gt;&lt;/iframe&gt;')</script>

document.write()之作用是將參數中的HTML表示法轉換成正常文件形式。&quot;為雙引號("),&#39;為單引號(')

將之放入blogger版面即可。放置位置請參考:將facebook推文按鈕加入blogger

參考文件:
HTML DOM Document write() Method
HTML ISO-8859-1 Reference
Blogger + facebook「讚」按鈕

將facebook推文按鈕加入blogger

首先到facebook官方分享工具網頁:
http://www.facebook.com/share/
設定好選項後將程式碼複製下來,如下:
<a name="fb_share" type="box_count" href="http://www.facebook.com/sharer.php">分享</a><script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>
若要在首頁上推每一篇文章,而不是推首頁,則作如下修改:
<a expr:share_url='data:post.url' name="fb_share" type="box_count" href="http://www.facebook.com/sharer.php">分享</a><script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>
若要放在文章右側,則作如下修改:
<div style='float:right; margin-left:10px;'> 
  <a expr:share_url='data:post.url' name="fb_share" type="box_count" href="http://www.facebook.com/sharer.php">分享</a><script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>
</div>
進入blogger管理介面中的 "設計>修改HTML",將"展開小裝置範本"打勾,將修改後的程式碼放在適當的位置,例如:
文章標題旁:
<h3 class='post-title entry-title'>
程式碼
文章內容旁:
程式碼
<data:post.body/>
參考資料:
Blogger 推文按鈕位置 DIY
在 Blogger 每篇文章上使用 Facebook 分享按鈕
expr - evaluate arguments as an expression
Facebook 分享功能

2010年10月4日星期一

繞過UAC,以管理員權限自動執行開機啟動的程式

由於我在使用FeedRoller這個程式的時候,發現若不以管理員權限執行,則有時候快速鍵會失效。通常這種情況發生在剛用管理員權限開啟一個程式之後,尚未切換螢幕焦點至一般權限的程式,這時候FeedRoller快速鍵會失效。除非用管理員權限開啟FeedRoller,否則就無法使用快速鍵。

這一點對我來說相當重要,因為FeedRoller的功能是輪播RSS新聞,如果播到我有興趣的標題時,快速鍵卻失效,我就不能立即切換到我想看的新聞內容了。為了解決此問題,我必須要將FeedRoller設定在開機登入時啟動,並且是以管理員權限啟動。欲達成此目的,必須要使用工作排程器。

首先打開工作管理員:

在"工作排程器程式庫"的空白處按右鍵,選"建立基本工作"

輸入名稱

點選"在您登入時執行"

點選"啟動程式"

輸入程式路徑

勾選"當我按[完成]時開啟這項工作的[內容]對話方塊"

或是在項目上點右鍵,選[內容]

 勾選紅色圈起來的地方(重要!)

取消勾選紅色圈起來的地方

取消勾選紅色圈起來的地方

完成後按確定,以後開機就會使用管理員權限啟動程式了!

2010年9月26日星期日

firefox portable 安裝 orbit downloader 套件

安裝完 orbit downloader之後,到C:\Program Files\Orbitdownloader\addons 資料夾底下,會看見一個檔案nporbit和一個資料夾OneClickYouTubeDownloader(名稱隨版本而定),進入該資料夾,找到install.rdf,用記事本開啟此檔案,找到<em:id>{35379F86-8CCB-4724-AE33-4278DE266C70}</em:id>這一行,把<em:id></em:id>中間的{35379F86-8CCB-4724-AE33-4278DE266C70}複製下來。

接著將OneClickYouTubeDownloader資料夾複製到..\FirefoxPortable\Data\profile\extensions\底下,
改名成 {35379F86-8CCB-4724-AE33-4278DE266C70},重新啟動firefox即可。

2010年9月19日星期日

利用google application engine 架設GAppProxy

安裝python 執行環境與google app engine SDK

http://www.activestate.com/activepython/downloads下載 python 2.5 windows 執行環境並安裝

http://code.google.com/intl/zh-TW/appengine/downloads.html 下載 google 應用服務引擎SDK並安裝

在 C:\Program Files\Google\google_appengine 底下建立helloworld 資料夾,新增以下檔案

helloworld.py

print 'Content-Type: text/plain'
print ''
print 'Hello, world!'

app.yaml

application: helloworld
version: 1
runtime: python
api_version: 1

handlers:
- url: /.*
script: helloworld.py

至命令列輸入
cd c:\program files\google\google_appengine\
dev_appserver helloworld\

瀏覽器開啟 http://localhost:8080/
若出現
Hello,world! 
則安裝成功

更多應用請參考使用 webapp 架構


在google app 建立project

登入google app engine,建立一個application,在Application Identifier 的地方填入你所想要的名稱,例如yourname-proxy-server,建立完成後記住這個id,以便之後修改app.yaml


安裝GAppProxy server 至google app engine

http://code.google.com/p/gappproxy/ 下載GAppProxy server 端的程式碼
解壓縮後將檔案放到 c:\program files\google\google_appengine\GAppProxy 底下
修改app.yaml

application: (先前記住的id)
version: (版本編號,只能整數)

至開始功能表執行google app launcher
選擇 file > add existing application
在appliction path 中輸入程式位置(c:\program files\google\google_appengine\GAppProxy)
按deploy即可上傳

或用命令列輸入
appcfg.py update GAppProxy/
即可上傳
(記得輸入google 帳號密碼)


設定GAppProxy client

http://code.google.com/p/gappproxy/ 下載GAppProxy client 端的程式
解壓縮之後修改proxy.conf
最底下新增一行
fetch_server = http://(先前記住的id).appspot.com/fetch.py
存檔後直接執行proxy.exe
變更瀏覽器proxy 設定
在http項目輸入ip:127.0.0.1 port:8000
http://www.stpi.org.tw/cgi-bin/fdb/iptest 測試ip,如果ip與原先不同,表示設定成功!


參考
Google App Engine 
gappproxy
入門指南:Python - Google 應用服務引擎 - Google Code
下載 - Google 應用服務引擎 - Google Code
Python Programming Language – Official Website
ActivePython Downloads - Download Python Packages for Windows, Linux and Mac | ActiveState
匿名網路系統 - (3) GAppProxy

2010年9月2日星期四

熱門文章sidebar解法

在sidebar加上新功能:熱門文章,但是文字跑掉,有些字被左邊界給切掉了。
解法:
<b:widget id='PopularPosts1' locked='false' title='熱門文章' type='PopularPosts'>
<b:includable id='main'>
  <b:if cond='data:title'><h2><data:title/></h2></b:if>
  <div class='widget-content popular-posts'>
    <ul>
      <b:loop values='data:posts' var='post'>
      <li>
        <b:if cond='data:showThumbnails == &quot;false&quot;'>
          <b:if cond='data:showSnippets == &quot;false&quot;'>
            <!-- (1) No snippet/thumbnail -->
            <a expr:href='data:post.href'><data:post.title/></a>
          <b:else/>
            <!-- (2) Show only snippets -->
            <div class='item-title'><a expr:href='data:post.href'><data:post.title/></a></div>
            <div class='item-snippet'><data:post.snippet/></div>
          </b:if>
        <b:else/>
          <b:if cond='data:showSnippets == &quot;false&quot;'>
            <!-- (3) Show only thumbnails -->
            <div class='item-thumbnail-only'>
              <b:if cond='data:post.thumbnail'>
                <div class='item-thumbnail-center'>
                  <a expr:href='data:post.href' target='_blank'>
                    <img alt='' border='0' expr:height='data:thumbnailSize' expr:src='data:post.thumbnail' expr:width='data:thumbnailSize'/>
                  </a>
                </div>
              </b:if>
              <div class='item-title'><a expr:href='data:post.href'><data:post.title/></a></div>
            </div>
          <b:else/>
            <!-- (4) Show snippets and thumbnails -->
            <div class='item-content'>
              <b:if cond='data:post.thumbnail'>
                <div class='item-thumbnail'>
                  <a expr:href='data:post.href' target='_blank'>
                    <img alt='' border='0' expr:height='data:thumbnailSize' expr:src='data:post.thumbnail' expr:width='data:thumbnailSize'/>
                  </a>
                </div>
              </b:if>
              <div class='item-title'><a expr:href='data:post.href'><data:post.title/></a></div>
              <div class='item-snippet'><data:post.snippet/></div>
            </div>
            <div style='clear: both;'/>
          </b:if>
        </b:if>
      </li>
      </b:loop>
    </ul>
    <b:include name='quickedit'/>
  </div>
</b:includable>
</b:widget>

將紅色字體部分刪除即可。