Yearly Archives: 2010

[翻譯]靈格斯繁中安裝注意事項


靈格斯 (Lingoes) http://www.lingoes.cn/ 是一套內地開發的翻譯兼字典軟體,是一套免費共享的軟體,使用者可提供自己的字典檔來服務大家,支援螢幕取字功能,或是反白文字整句翻譯。

我以前都用譯典通,到 8.0 時,燦坤只有一次性 3 人版,我原先從 2002 / 6.0 / 7.0 一路升級上來的版本不能直接升級,因此就在朋友推薦下,改用靈格斯,早先使用的時候,都是先安裝標準簡中版,再安裝繁中介面,上週幫人裝新 NB 時,看到靈格斯新版可以直接裝繁中版 (lingoes_2.6.3_tw.exe / lingoes_2.7.0_tw.exe) ,就直接裝了,但是朋友反應,中文找英文時,輸入「中」會變「醜」,我試過的確如此,我的 NB 是裝 2.6.1 自動升級到 2.6.3 ,則無此問題,起先以為新版的問題,移除改裝舊版 2.6.3 ,一樣不正常,找不出是哪的 bug 。

最後我回頭改依照我原先的裝法,先裝標準的 lingoes_2.7.0_zh.exe 簡中版,再去下載繁中字典類別的字典就正常了,使用這套時,要注意一下。

另外我順便試了隨身碟版的 lingoes_portable_2.7.0_zh.zip ,把裡面的簡中字典移除,再掛入小而美的「英漢速查字典」、「漢英速查字典」,就是繁中用的隨身碟版,一般來說隨身碟以小而美為主,所以就不考慮再掛入其他字典了,由於這是簡中版再掛字典,所以也沒發生繁中版那種中英查詢時亂跳的狀況,不過也可以把隨身碟版當成免安裝的綠色軟體,直接在硬碟使用,這就見仁見智了。

靈格斯支援多國語言翻譯,不過多數是翻成簡中的,若是簡中還行的,裡面百科全書也可以裝來玩玩,繁中還有康熙字典漢語大辭典等純中文的工具書,也非常的不錯用,對於裝繁中版發生無法正常做漢英查詢的,可參考此篇重新安裝。

Categories: 自用整理 | 發表留言

[Office][bug]線上手冊越來越爛,這根本就又錯了嘛


話說,Office 2010 的 VBA 升級到 7.0 ,不禁讓我想到,2005/3 全球 Visual Basic 開發者在一個公開網站簽署,要求 VB6 要像 VC 一樣能被保留,弄成 VBNET 跟 B# 兩套,當時微軟的回應是窒礙難行…
事實上在 Office 2007 VB6 的核心 VBA 升級到 6.5 現在 Office 2010 VBA 達到 7.0 版,時間總能證明一切,這是微軟強制 VB6 開發者遷移到 VBNET 的手法而已。
這不是這篇的重點,話說我打開 VBA 線上手冊,要參考一些資訊時,忽然發現每個方法、屬性下面都多了一堆無意義的文字,那就是
文章
這樣非常占版面,找屬性變成需要猛翻頁,捲動滑鼠,檢視原始碼中,並沒有文章的 html 標籤跟內容,看樣子是某個白爛的 script 造成,我懷疑應該是原先要做到連結上的 title=’Document’ 被搞錯了,真是夠了。
經過檢查,Access、Excel、Outlook、PowerPoint、Publisher、Visio、Word ,都有這個情形,看來應該是共用說明文件就有這個 script 功能造成的。
Categories: Office | 標籤: | 發表留言

[VS2010]Microsoft Help Viewer Power Tool 安裝注意事項


話說前篇 [VS2010]MSDN Library for Visual Studio 2010 的安裝與小評 幹繳了一下,VS產品行銷經理Dann幫大家反應心聲給美國的 VS2010 開發小組,今天分享了一個工具:
 
這個東西我上篇抓過來安裝,但是會發生錯誤,且網站上沒有螢幕截圖,不知道幹嘛,所以我就擺著不管,錯誤畫面如下:
 
既然這次看到畫面,就想辦法解決這個問題。
 
一樣,祭出 Orca.exe ,使用 VS2005 者請看前篇,[WinSDK] Orca 哪裡找?
VS2008 (v4.0.5299.0) : C:\Program Files\Microsoft SDKs\Windowsv6.0A\bin\Orca.msi
VS2010 (v5.0.7069.0) : C:\Program Files\Microsoft SDKs\Windowsv7.0A\bin\Orca.msi
 
將表格 [XmlConfig] 原先 [ElementPath] 欄位這四行裡面的 EN-US 替換為 ZH-TW ,如下圖 (點圖可放大瀏覽) ,若不會改的話,可下載此壓縮檔,點選 install.exe 執行安裝:
 
這樣就可以順利完成安裝了。
 
安裝好再開啟線上手冊就會發現,即使使用 IE 來瀏覽,一樣有 [內容]、[索引]、[搜尋] 等頁籤,下圖為[搜尋]頁籤:
 
不過[內容]頁籤仍然一樣爛,沒有階層性,如下圖:
 
索引功能倒是滿正常的:
 
目前這個版本還在 Beta 中,就湊合著用,此外還要等待新版出來完全支援各國語言,我自己是懶得再改了,能用就可以了,剩下來的等原廠出就好。
 
[2010/06/20 21:08 補]
很遺憾,Help Viewer Power Tool 會跟前一篇說的 H3Viewer 衝突,所以最後只得移除~
下面這張螢幕拷貝,點圖可放大。
Categories: 技術分享 | 2 則迴響

[病毒]DNS ping IP 沒問題,但 nslookup 沒回應


剛剛在論壇上有看到有人有類似狀況,忽然想到上周公司裡也有這個情形。
 
話說上周有人跟我反應網路連不上時,我處理過程是:
1. 收信,正常,很好。
2. ping 168.95.1.1 ,有回應,很好
3. nslookup www.hinet.net ,沒回應?
4. nslookup www.hinet.net 8.8.8.8 ,沒回應~ 8.8.8.8 為 google 的 dns
5. 推論可能是 dns 回應,但不確定原因,至少可以判定網路是正常的。
6. 連上公司對外路由,檢查流量,阿勒?有台電腦爆流量,瘋狂上傳,問了一下,沒人承認是誰的電腦,先把這台封掉。
7. 網路恢復正常,應該是 ADSL 上傳頻寬滿載,導致下傳頻寬瞬段。
 
隔天下午有人找我說他的電腦連不上網,原來他昨天出差去,電腦沒關,找到禍首後,先解封網路,觀察了一下,沒立刻有狀況,等過了兩個多小時,又發生問題,檢查了他的電腦,隨機版的防毒軟體已經過期很久了,另外一個軟工主動接下來處理,改裝小紅傘,抓到一個後門,問題就解決了。
 
使用 ADSL 時,發生問題請先注意上傳量,當然這只是其中一種狀況,但別忘了這件事。
Categories: 技術分享 | 發表留言

[Office 2010]Microsoft Office Document Imaging (MODI) 替代方案


MODI: Microsoft Office Document Imaging 包含幾個部分:
  1. 虛擬印表機:Microsoft Office Document Image Writer
  2. Microsoft Office Document Imaging Viewer (MSPView.exe)
  3. Microsoft Office Document Scanning (MSPScan.exe)
  4. 內嵌其中的 OCR 功能
  5. 可程式化的 COM 元件

Office 2010 已移除了 MODI,若先前有安裝 MODI 時,在安裝 Office 2010 也會被自動移除。而從微軟在 Office 2007 的策略來看,微軟已經打定主意使用 XPS 取代 MODI ,但 XPS 檔案較大,且需要使用 IE 才能瀏覽,所以我一直不喜歡用,我通常的選擇是先用 MODI ,其次是 pdf 。

替代方案:

上述 3/4 的部分,在 Office 2010 是設計使用 OneNote 2010 內建的來取代,但是 OneNote 裡面的 OCR 辨識率低,很多人用不爽。

上述 1 的部分,可以安裝 Microsoft Office Live Meeting (2010 四月號) ,會自動建立一個虛擬印表機:Microsoft Office Live Meeting 2007 Document Writer ,此功能同 1,此軟體為線上會議使用,平常可瀏覽、參加微軟線上研討會,公司若有安裝 Server ,也可以用作公司線上會議使用 。 (註:Download the Microsoft Office Live Meeting 2007 client 請在此下載,中文版網頁短路了,沒有連結)

上述 2 的部分,謠傳微軟將在近期提供 MODI Viewer 的軟體給使用者下載,解決目前無法瀏覽 MODI 文件的問題。

上述 5 的部分目前沒看到替代方案,早先由於 MODI 的功能強大,很多開發者到微軟網站下載 MODI SDK 線上手冊,來開發對應功能,例如先用 VBNET 將圖檔存成 tif 格式後,再用 MODI 載入,用其中的 OCR 功能識別文字等。

 

拆成這麼散,所以當然不方便使用,所以微軟建議若有需要此功能,暫時可在安裝完 Office 2010 後,再用自訂安裝 Office 2007 將 MODI 裝起來,我目前是這樣裝啦,不過很不方便,所以我一般虛擬文件應該會改投向 pdf 了。

我目前是用 Bullzip 的 PDF Printer,這套是免費的,官網有中文可下載,可另存為多種圖檔格式,無廣告,且產生的 pdf 檔案較小,在 6.x 版以前,中文路徑或檔名可能發生錯誤,在 7.x 以後已沒遇過此問題。

MODI 看起來是微軟在 Office 元件中,繼 OWC 後下一個被砍的好用功能,說實在的,不知道微軟上層腦袋在想啥,OWC / MODI 都是很好用的東西,居然都被停止支援,弄得使用者怨聲載道,這也是一種神奇。

參考:http://support.microsoft.com/kb/982760/zh-twhttp://technet.microsoft.com/zh-tw/library/cc179199.aspx

Categories: Office | 4 則迴響

[Microsoft Update] 80070426 Windows Update 發生錯誤


這是我自己耍白,放在自用整理提醒自己…
 
安裝完 VS2010 時,順便整理一下,看哪些服務可以不用開。就順手把「Software Licensing」服務關掉,今天收到安全通報,讓我納悶一下,通常電腦會先自動更新重開機吧?
 
趕緊手動更新,卻收到這個訊息:
80070426 Windows Update 發生錯誤
 
最後是因為 Software Licensing 服務被關掉,啟用後就恢復正常了。
 
Categories: 自用整理 | 發表留言

[Access]資料庫 SQL 語法範例


這篇盡量用最簡單的範例來展示,所以不可避免的,選上了成績資料為展示的目標,當然實際上運作可能包含更多的欄位,範例則是盡量精簡。一般來說資料庫考慮到各程式語言的相容性、可遷移性,盡量不用中文,範例就不太講究了,因為中文也是一種註解,就偷個懶。
 
資料表:

清單為記錄所有學生各科的成績

清單
DBID 姓名 科目 分數
1 小明 國文 95
2 小華 國文 100
3 小英 國文 87
4 小明 英文 99
5 小華 英文 94
7 小明 數學 91
8 小華 數學 96
9 小英 數學 89
 
分數級距為老師評鑑成績的名稱:

分數級距
DBID 級距 上限 下限
1 滿分 101 100
2 100 95
3 須加強 95 0
 
 

1. 要取得學生清單
SQL 語法
SELECT DISTINCT 清單.姓名
FROM 清單;

名冊
姓名
小明
小英
小華
 
2. 每個學生的平均
SQL 語法
SELECT 姓名, AVG(分數) AS 平均
FROM 清單
GROUP BY 姓名;

各人平均
姓名 平均
小明 95
小英 88
小華 96.6666666666667
 
3. 替學生各科成績加上中文評鑑標語:
SQL 語法
SELECT 清單.姓名, 清單.科目, 清單.分數, 分數級距.級距
FROM 清單 LEFT JOIN 分數級距 ON 清單.分數<分數級距.上限 AND 清單.分數>=分數級距.下限;

分數評鑑
姓名 科目 分數 級距
小明 國文 95
小華 國文 100 滿分
小英 國文 87 須加強
小明 英文 99
小華 英文 94 須加強
小明 數學 91 須加強
小華 數學 96
小英 數學 89 須加強
 
4. 各科成績表,不含平均:
SQL 語法
SELECT 名冊.姓名, 國文成績表.分數 AS 國文, 英文成績表.分數 AS 英文, 數學成績表.分數 AS 數學
FROM (((名冊
   LEFT JOIN 清單 AS 國文成績表 ON (名冊.姓名=國文成績表.姓名 AND 國文成績表.科目=’國文’))
   LEFT JOIN 清單 AS 英文成績表 ON (名冊.姓名=英文成績表.姓名 AND 英文成績表.科目=’英文’))
   LEFT JOIN 清單 AS 數學成績表 ON (名冊.姓名=數學成績表.姓名 AND 數學成績表.科目=’數學’))
;

各科成績表
姓名 國文 英文 數學
小明 95 99 91
小英 87 89
小華 100 94 96
 
5. 成績總表,各科成績加上總平均,這裡偷個懶,我將各科成績表、各人平均都建立成 View (檢視),實際上可純靠 SQL 語法兜出來,只是不想讓 SQL 語法太長:
SQL 語法
SELECT 各科成績表.*, 各人平均.平均
FROM 各科成績表 LEFT JOIN 各人平均 ON 各科成績表.姓名=各人平均.姓名
ORDER BY 各人平均.平均 DESC;

成績總表
姓名 國文 英文 數學 平均
小華 100 94 96 96.6666666666667
小明 95 99 91 95
小英 87 89 88
 
6. 最後要做成績分布表:
SQL 語法
SELECT 分數級距.級距, 國文級距表.國文, 英文級距表.英文, 數學級距表.數學
FROM (((分數級距
   LEFT JOIN (SELECT 級距, Count(級距) AS 國文 FROM 分數評鑑 WHERE 科目=’國文’ GROUP BY 級距)  AS 國文級距表 ON 分數級距.級距=國文級距表.級距)
   LEFT JOIN (SELECT 級距, Count(級距) AS 英文 FROM 分數評鑑 WHERE 科目=’英文’ GROUP BY 級距)  AS 英文級距表 ON 分數級距.級距=英文級距表.級距)
   LEFT JOIN (SELECT 級距, Count(級距) AS 數學 FROM 分數評鑑 WHERE 科目=’數學’ GROUP BY 級距)  AS 數學級距表 ON 分數級距.級距=數學級距表.級距)
ORDER BY 分數級距.DBID;

各科級距表
級距 國文 英文 數學
滿分 1
1 1 1
須加強 1 1 2
 

目前想到跟成績有關的大概是這些,如果有再想到新的,再補進本文。
Categories: 資料庫 | 4 則迴響

[VS2010]MSDN Library for Visual Studio 2010 的安裝與小評


安裝 MSDN for VS2010
 
VS2010 在預設上是以網路文件為主,我自己比較龜毛,我喜歡安裝在本機,查詢使用上都比較方便,不過這次安裝介面有變更,對於從 VS98 ~ VS2008 以來,都是在主安裝視窗有選項可選擇,這次是安裝完的畫面一個令人沒感覺的畫面上:
 
若需了解更多資訊,可點選 [詳細資訊…] 參考:
 
如果你跟我一樣漏看了上面的畫面,你就必須從 IDE 視窗來安裝,我在 PC 上安裝時因為同時在看網頁,等切回來就沒仔細看漏看這個按鈕,在 NB 上則是邊用 PC 邊看 NB 畫面,就注意到這個功能,前兩天我還以為是 MSDN Library for VS2010 還沒放出來哩~
 
手動安裝跟直接安裝都要先選擇存放的位置,通常不會特別改變,直接確定過去:
 
由於我習慣預設先查本機的線上說明,所以要設定一下,安裝好的預設值是從網頁瀏覽:
 
自訂安裝要選來源,直接安裝不會問,先前我以為旗艦版光碟片 2.xx GB 不含線上手冊,不過看樣子是錯的,PC 手動從線上安裝抓很久,NB 直接安裝不用選來源一下就好了,看樣子光碟片內有檔案:
 
手動從線上安裝項目很多可以選,直接從安裝程式繼續安裝,只會有最新的 .Net 4.0 且只有繁中可以選,不像從線上安裝有一堆可以選,基本上除了 .Net 3.5 不選外,其他所有有寫 中文(台灣) 的,就是光碟片裡面有的線上手冊:
 
光碟片裡面唯一沒有翻譯成中文標題的是 「Win32 And COM Developement」,若常用到 API 之類的,記得選起來:
 
從線上安裝會下載很久,才開始安裝,從光碟安裝這裡直接進入到解壓縮程序,大概 20 分鐘左右可安裝完畢:
 
這樣到此就安裝完畢了。

 
使用 MSDN for VS2010
 
在 VS2010 IDE 環境下按 [F1] 或是從開始工具列執行 [Microsoft Visual Studio 2010 文件] ,就會先啟動 [Help Library 代理程式,並透過瀏覽器 (我的是 IE, Internet Explorer) 來瀏覽文件,我覺得這樣很佔資源,這個代理程式不會自動關閉,此外 IE 本身就是有名的吃資源怪獸,當然跟 IE 整合也可以讓使用者有統一的習慣,但我很懷疑這樣未來如果有新瀏覽器或是瀏覽器改支援 HTML 5/CSS 3 時,這個功能的相容性我很質疑
 
我習慣用盡量大的螢幕空間來看文件,所以我試用了縮放左側目錄區的功能,在 VS2008 以前的版本,可以縮小到最小,大概只有 16 pixel 寬,但是在 VS2010 下,我只能說是短路了,按一下向右放大,再按一下又向右放大,這時才能按一下向左縮小,但這不是縮到最小寬度,而是一開始的寬度,對我來說,簡直浪費空間
 
 
此外,左側的目錄在開啟子節點時,表現的方式居然是升級到與母節點同層,我承認 MSDN Library for VS2010 層數很多,但是這樣處理,只會讓使用者會錯意,搞不清楚目錄架構與層級,除了以外,我找不到其他形容詞:
 
而我最常用的索引功能,在這種介面下完全被拿掉,我實在很想問,這是哪隻 X 腦袋設計的?
 
而我次常用的搜尋功能,也沒像 VS2005/VS2008 線上手冊那樣,可自動連結到 MSDN 網站及論壇,雖然這個錯誤訊息只能在 VS2005/VS2008 的線上手冊才有,但好歹可以連到 MSDN 網站或論壇補充資訊吧?完全沒有,下面就是證明 (這篇的錯誤訊息在 VS2005/VS2008 的線上手冊,請參考[VS2010]原始碼不相容:在模組中不當使用 ‘Overloads’ 關鍵字一文):
 
MSDN for Visual Studio 2010 是我從 MSDN for Visual Studio 97 以來,用過最難用、最爛的版本,安裝好就讓我頭皮發麻,不知道往後的日子該怎樣使用線上手冊,以往網站操作介面不便,大家可以體諒網頁技術總有侷限,這次這樣搞,簡直讓我從頭罵到尾,心中幹聲不斷
 
通常我打開本機的線上手冊,我會直接在索引輸入我要查的關鍵字,比如說 HttpResponse.Write 方法,若是不知道該用哪個物件,則透過搜尋功能來找,而目錄功能則是最少用,通常是看這個方法時,想要看更多的相關功能,才會按下同步,讓目錄展開到我正在看的頁面,然後依照目錄結構,看看上下相關的章節,這次這樣大改,我都不知道我該怎樣配合來使用新版的 MSDN for Visual Studio 2010 ,只好暫時先不移除 MSDN for Visual Studio 2008 來因應。
 
節省成本有節省成本的方法,改成這樣,根本不知道該怎樣用,第一次看到微軟設計出完全違反使用習慣的軟體架構與介面,我可以用國罵結束這篇嗎?

[20:45 補]
剛剛小朱給我了一個非官方解 H3Viewer,詳見下圖,搜尋結果雖然不夠好,但是至少索引出來了~
H3 應該是指 Help 3 吧~ 忽然讓我想起,先前我還很期待 VS2010 的 Microsoft Help 3.0 ,該不會就是這個吧?真是讓我期待碎滅…
 

[5/31 01:07 再補]
依據噗友回應,目前有個提供索引功能的測試版本:HelpViewerKeywordIndex VS 2010 Ext
這個裝好後可在開發環境內瀏覽主題:
Categories: 技術分享 | 5 則迴響

[Visio 2010]試用 Visio 小記


剛剛試用了一下,是誰把 [軟體與資料庫] 下的 [Windows XP 使用者介面] 翻譯成 [曲面圖] 阿?看得我霧煞煞~
Visio 2007:
 
Visio 2010 (點圖可放大):
 
另外那個 [建築工程] 用詞也很差,裡面以[電子工程]為主吧,多個流力的話,那分類成 [零件設計] 也比較好吧~
 
[工作流程物件] 裡面原先是 斜的有 3D 感的 網頁畫面 元件,現在變成純 2D 了啦~ 我常用到耶~ 我不要啦~ 
Visio 2007:
 
Visio 2010:
 
下面滑鼠正在拖拉的,就是 Visio 2010 的網頁圖示,原先 Visio 的則是我先前畫好的。
 
[5/30 16:57 補]
還好 NB 灌的 Visio 2007 還沒升級移除,先把它拷貝給 Visio 2010 用,不然不習慣啦~
Categories: Office | 發表留言

[VS2010]原始碼不相容:在模組中不當使用 ‘Overloads’ 關鍵字


今天凌晨剛裝好 VS2010 ,當然得開啟一些舊程式跑,開到一個有用到 GIS 模組的專案時,發生了這個錯誤訊息:
在模組中不當使用 ‘Overloads’ 關鍵字
 
但是同一段程式碼在 VS2005/VS2008 都可以跑,比對了一下前兩者的線上手冊,都一樣,線上手冊位置如下:
 
而這兩個線上文件都寫可以透過宣告為 Public / Friend 來處理,摘錄如下:

若要修正這個錯誤

  • 如果想要這個程式設計項目是模組,請在它的宣告中只使用 PublicFriend 關鍵字。根據預設,如果您沒有指定存取層級,模組便會使用 Friend 關鍵字。

但是在 VS2010 沒找到有這方面錯誤訊息,可能還沒翻譯完,所以清單上還沒有:
 
目前暫時透過刪除 Overloads 可以解決這個問題,範例如下:

VS2010 拒絕編譯的寫法

Module Module1

    Friend Overloads Function Test1(ByVal vDbl As Double) As Double

        Return vDbl

    End Function

 

    Friend Overloads Function Test1(ByVal vInt As Integer) As Integer

        Return vInt

    End Function

End Module

 

 

VS2010 可以通過編譯的寫法

Module Module1

    Friend Function Test1(ByVal vDbl As Double) As Double

        Return vDbl

    End Function

 

    Friend Function Test1(ByVal vInt As Integer) As Integer

        Return vInt

    End Function

End Module

 

 
Categories: 技術分享 | 發表留言

[VS2010] 我的 新版軟體 初體驗


晚上小朱通知 VS2010 繁體中文版上 MSDN Subscription 了~ 趕緊抓下來玩玩~
在網站上還沒看到 MSDN Library for Visual Studio 2010 ,英文版那邊也沒有,可能還得等一陣子吧,我個人偏好把使用者手冊安裝在本機,也還好剛巧先看到了 VS2010 版本說明,不然還真的不會分,不會選,反正現在硬碟大,所以我就裝最頂級的 旗艦版 ~
本來想用虛擬光碟安裝,聽噗友說要重開兩次,所以還是先燒 DVD 再裝,反正還要裝到 NB 去,燒成光碟也不吃虧。
裝很久,裝到我都忘了它的存在,裝好後,想說先複製原始碼一份,免得開完升級後,想降級卻降不回來,結果一備份原始碼,又忘了這件事…
等到想起來以後,已經過踩線的時間了~ 趕快打開 VS2010 … 第一次啟動超久,久到我都忘了我本來要開哪個原始碼做相容測試。
 
既然忘了,想說先前在用 VS2008 時,伺服器總管那邊不能用 Oledb 連 SQL Server Compact 3.5 sp2 ,那就測測 VS2010 吧~ 好順~ 連上了~
 
沒想到我第一次用 VS2010 ,不是測原始碼,而是玩這個,我自己也覺得我很白,寫文紀念,因為完全沒有技術分享,所以分類到「自用整理」去。
Categories: 自用整理 | 1 則迴響

特例:Outlook / Live Mail 之非戰之罪:附件打不開


最近碰上個棘手的情況,就是 pdf / xls / doc / rar 等附件寄到對方信箱,但對方開不了,檢查原始信件 (.eml) 發現一個問題,就是信件內容少了一行 MIME Header base64 的描述,造成附件未依 base64 解碼,懂得人可以手動把這行加到 .eml 內,再開啟就正常了。
 
先用一封測試郵件比對差異性:

正常版 (gMail, ms5.hinet.net)

問題信箱

X-Mailer: Microsoft Windows Live Mail 14.0.8089.726

X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8089.726

Content-Length: 15931

Status:  

 

這是 MIME 格式的 Multipart 郵件。

 

——=_NextPart_000_0011_01CAFC16.6AEEDEC0

Content-Type: multipart/alternative;

                boundary="—-=_NextPart_001_0012_01CAFC16.6AEEDEC0"

X-Mailer: Microsoft Windows Live Mail 14.0.8089.726

X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8089.726

X-Spam-Status: No, score=-1.7

X-Spam-Score: -16

X-Spam-Bar: –

X-Spam-Flag: NO

 

3o,O MIME .f&!*: Multipart 6l%s!C

 

——=_NextPart_000_001B_01CAFC1E.5C879BD0

Content-Type: multipart/alternative;

                boundary="—-=_NextPart_001_001C_01CAFC1E.5C87C2E0"

——=_NextPart_000_0011_01CAFC16.6AEEDEC0

Content-Type: application/pdf;

                name="=?utf-8?Q?testpdf.txt_-_=E8=A8=98=E4=BA=8B=E6=9C=AC.pdf?="

Content-Transfer-Encoding: base64

Content-Disposition: attachment;

                filename="=?utf-8?Q?testpdf.txt_-_=E8=A8=98=E4=BA=8B=E6=9C=AC.pdf?="

——=_NextPart_000_001B_01CAFC1E.5C879BD0

Content-Type: application/pdf;

                name="=?utf-8?Q?testpdf.txt_-_=E8=A8=98=E4=BA=8B=E6=9C=AC.pdf?="

Content-Disposition: attachment;

                filename="=?utf-8?Q?testpdf.txt_-_=E8=A8=98=E4=BA=8B=E6=9C=AC.pdf?="

 
第一段藍色的差異並不會影響郵件的閱讀,可以忽略,第二段紅色的差異,漏了這行,附件就無法讀取。
所以人工編輯 .eml 就是把這行:
Content-Transfer-Encoding: base64
加到 MIME Header 區即可。
 
目前測試會有此情形的,是一家很大的美商主機商 BlueHost,可以看本文的介紹,測試會出問題的 SMTP 版權畫面如下:

問題信箱的主機

C:> telnet 對方domainName 25

220-box276.bluehost.com ESMTP Exim 4.69 #1 Tue, 25 May 2010 01:40:14 -0600

220-We do not authorize the use of this system to transport unsolicited,

220 and/or bulk e-mail.

quit

221 box276.bluehost.com closing connection

 

 

遺失與主機的連線。

 
經過交叉比對,會出問題的條件還要是 HiNet 的客戶,下表是 3 個伺服器互寄:
  收件信箱 gMail ms5.hinet.net 問題信箱
寄信伺服器  
msa.hinet.net 正常 正常 異常
問題信箱 正常 正常 正常
gMail 正常 正常 正常
 
目前會出現此問題的已經確認的有:Outlook 2007 / Windows Live Mail 14.0 ,可能其他軟體也有此情況,因為我用 Windows Network Monitor 來看寄信時的封包,寄件封包是包含 base64 的編碼的,所以我懷疑是寄件伺服器跟收件伺服器透過 SMTP 溝通時,才發生的錯誤。
 
Outlook 2010 倒是沒事,不知道是不是因為 MIME 編碼說明字串用英文,所以沒事…

Outlook 2010 Mail Header

X-Mailer: Microsoft Outlook 14.0
Thread-Index: Acr74iw2m2FBEkcVSOCbZCydLN6kSA==
Content-Language: zh-tw
X-Spam-Status: No, score=-2.6
X-Spam-Score: -25
X-Spam-Bar: —
X-Spam-Flag: NO

 

This is a multipart message in MIME format.

 

——=_NextPart_000_0020_01CAFC25.410449B0
Content-Type: multipart/alternative;
 boundary="—-=_NextPart_001_0021_01CAFC25.410449B0"

 
想要知道自己是不是這個狀況的受害者,如果是 Office 文件,開起來可能會變成一堆英數字,其他檔案類型通常只會告訴你不能開,你可以將附件存起來後,用記事本開,看看是否是純英數字,大概是每 76 字元換行,若與此狀況相符,恭喜你,中獎了。
 
可以的話,麻煩你分享一下你的寄件伺服器、信箱、郵件軟體產品名與版本。
 
[18:03 補]
OutlookExpress 6.0 也沒事,不OE6 MIME 編碼說明字串也用英文

Outlook Express 6.0 Mail Header

X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.5931
Disposition-Notification-To: <call.wu@msa.hinet.net>
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931
X-Spam-Status: No, score=-1.7
X-Spam-Score: -16
X-Spam-Bar: –
X-Spam-Flag: NO

 

This is a multi-part message in MIME format.

 

——=_NextPart_000_02F9_01CAFC26.821966A0
Content-Type: multipart/alternative;
 boundary="—-=_NextPart_001_02FA_01CAFC26.821966A0"

 
我現在開始懷疑,這串中文字串是不是在美國某些機器會短路了~
 
[22:20 再補]
用 Windows Live Mail 最新版 14.0.8117.416 分別用純文字檔、HTML 再測一次,我發覺應該是這家 SMTP Server 安裝的防廣告過濾器的問題,-25 都可以把附件正確發過去,但是 -17 則不行:

Windows Live Mail 純文字郵件附件可讀 Mail Header

X-MSMail-Priority: Normal
Importance: Normal
X-Mailer: Microsoft Windows Live Mail 14.0.8117.416
X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8117.416
X-Spam-Status: No, score=-2.6
X-Spam-Score: -25
X-Spam-Bar: —
X-Spam-Flag: NO

 

3o,O MIME .f&!*: Multipart 6l%s!C

 

——=_NextPart_000_000A_01CAFC56.FF36D110
Content-Type: text/plain;
 format=flowed;
 charset="utf-8";
 reply-type=original
Content-Transfer-Encoding: quoted-printable
X-MIME-Autoconverted: from 8bit to quoted-printable by msr12.hinet.net id WAA11428

 

Windows Live Mail HTML郵件附件不可讀 Mail Header

X-Mailer: Microsoft Windows Live Mail 14.0.8117.416
X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8117.416
X-Spam-Status: No, score=-1.7
X-Spam-Score: -16
X-Spam-Bar: –
X-Spam-Flag: NO

 

3o,O MIME .f&!*: Multipart 6l%s!C

 

——=_NextPart_000_0009_01CAFC58.3B1A2050
Content-Type: multipart/alternative;
 boundary="—-=_NextPart_001_000A_01CAFC58.3B1A2050"

 
現在過濾出可能被誤判需同時滿足的條件是:
1. msa.hinet.net 寄給 BlueHost  
2. 多媒體郵件,第一行為:「這是 MIME 格式的 Multipart 郵件。」
3. MIME 郵件內文 (Mail Body) 第一部分不為 text/plain ,我猜 html/plain 應該也可以,因為 HTML 郵件為 multipart/alternative 。
 
[5/26 16:25 再補]
我們家的信箱提供業者回復他們的主機不是 BlueHost ,可能是我昨天再測多個有相同問題的廠商,開太多命令提示字元搞錯了,所以上面那個 BlueHost 應該是廠商的 SMTP Server 。
我們家的是亞太線上,使用 SpamAssassin(TM) Spam Filter 濾信,有可能是這個濾信規則的問題。
我 Google 到這個規則,不確定是不是這條規則:
[enabled],"Base 64 Encoded Body","Base 64 Encoded",16711680,AND,Delete,Body,contains,"Content-Transfer-Encoding: base64",Body,doesn’tContain,"Content-Type: image/",Body,doesn’tContainRE,"^Content-Disposition: (inline|attachment);",Body,contains,"Content-Type: text/plain"
Categories: 技術分享 | 9 則迴響

[Access] Access 2010/2013 轉換資料庫格式


今天我要轉換一個由 ODBC 自動產生的檔案,格式為 Access 2.0/95 ,只要是 Access 97 之前的格式,Access 2003 以後就不准新增查詢或是變更結構,所以我依照 Access 2007 的慣例,另存為 Access 2000/2002 的格式就可以了~ 愉快的點選另存新檔:
阿勒~怎麼沒格式可選?存檔試看看~ 居然還是原先的 Access 2.0/95 格式~
正在我頭疼的時候,台灣的國寶:茂伯 跳出來指點我,Access 2010 這功能必須自己加到工具列中… (見這)
加好後終於有這功能可以轉換了~ 先前沒空找如何處理,只好先拿 VS2008 的資料庫連線做查詢,沒想到複製到 Excel 真是超慢的一把罩阿~ (見這)
 [2015/03/18] 補上 Access 2013 畫面:
新增工具列:
自訂工具列

自訂工具列

轉換舊格式:
轉換格式

轉換格式

Categories: Office | 發表留言

[Outlook]讓信件能保存完整原始內容


使用 Outlook Express / Windows Mail / Windows Live Mail 因為都是使用 eml 格式來存檔,所以都能直接檢視信件原始內容,這些內容是郵件在網路上傳遞過程中的明碼內容,所以對於某個檔案不能讀取、郵件中斷、格式不對或是追蹤發信路徑時,都很重要。
Outlook 預設只保留郵件標頭 (Mail Header) ,並不保存郵件本文 (Mail Body) ,信件接收到後將自動存成 Unicode 格式的 msg 內容,因此若碰上某個檔案不能讀取時,很難追蹤問題所在,若有原始郵件保留需求,可加入下列機碼:
[HKEY_CURRENT_USER\Software\Microsoft\Office\1x.0\Outlook\Options\Mail]
SaveAllMIMENotJustHeaders=dword:00000001
此機碼對 Outlook 2007 / 2003 / XP 有效,目前經測試 Outlook 2010 並不支援此機碼。
測試成果圖如下:
Outlook 2007
Outlook 2003
圖中反白的地方正是 Mail Header & NewLine & Mail Body 的交界處。
Categories: Office | 發表留言

[Outlook]啟用紀錄 追蹤收發郵件的問題


Outlook 2003 SP1 以後可在選項設定,Outlook 2003 SP1 以前可參考:
Outlook 2010 可參考此篇:
裡面沒圖,補上圖片在此。
此功能開啟後,只要一啟動 Outlook ,就會在左下角系統工具列提醒你這個功能未關閉,測完記得關閉這個功能:
Outlook 2003 的畫面:
要找紀錄檔時,請將下面功能變數指定位置直接複製到檔案總管列貼上:
Outlook 2003 以前:%Temp%
Outlook 2007 以後:%Temp%\Outlook 記錄
相關的紀錄檔檔名為:
MAPI/POP3/SMTP: Opmlog.log
IMAP: IMAPx.log
Hotmail: Hotmailx.LOG
一般來說,多半是追蹤 POP3 / SMTP 通訊協定,就是找 Opmlog.log 這個檔,下面是 gMail 登入的情形,要看懂的話,需要熟 SMTP / POP3 通訊協定,不懂的話可將此紀錄複製下來,轉給懂的人去看:

gMail 連線紀錄

2010.05.23 11:11:30 GMail: Synch operation started (flags = 00000001)

2010.05.23 11:11:30 GMail: UploadItems: 0 messages to send

2010.05.23 11:11:30 GMail: Synch operation completed

2010.05.23 11:11:30 GMail: Synch operation started (flags = 00000030)

2010.05.23 11:11:30 GMail: DoPOPDownload(flags = 00000030, max msg = ffffffff): full items

2010.05.23 11:11:33 POP3 (pop.gmail.com): =========  Initial blob   =========

2010.05.23 11:11:33 POP3 (pop.gmail.com): ===================================

2010.05.23 11:11:33 POP3 (pop.gmail.com): Port: 995, Secure: SSL, SPA: no

2010.05.23 11:11:33 POP3 (pop.gmail.com): Finding host

2010.05.23 11:11:33 POP3 (pop.gmail.com): Connecting to host

2010.05.23 11:11:33 POP3 (pop.gmail.com): Securing connection

2010.05.23 11:11:33 POP3 (pop.gmail.com): Connected to host

2010.05.23 11:11:33 POP3 (pop.gmail.com): <rx> +OK Gpop ready for requests from [我的ip] [session]

2010.05.23 11:11:33 POP3 (pop.gmail.com): Authorizing to server

2010.05.23 11:11:33 POP3 (pop.gmail.com): [tx] CAPA

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> +OK Capability list follows

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> USER

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> RESP-CODES

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> EXPIRE 0

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> LOGIN-DELAY 300

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> X-GOOGLE-VERHOEVEN

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> UIDL

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> .

2010.05.23 11:11:34 POP3 (pop.gmail.com): [tx] USER [我的 eMail]

2010.05.23 11:11:34 POP3 (pop.gmail.com): <rx> +OK send PASS

2010.05.23 11:11:34 POP3 (pop.gmail.com): [tx] PASS *****

2010.05.23 11:11:35 POP3 (pop.gmail.com): <rx> +OK Welcome.

2010.05.23 11:11:35 POP3 (pop.gmail.com): Authorized to host

2010.05.23 11:11:35 POP3 (pop.gmail.com): Connected to host

2010.05.23 11:11:35 POP3 (pop.gmail.com): [tx] STAT

2010.05.23 11:11:35 POP3 (pop.gmail.com): <rx> +OK 0 0

2010.05.23 11:11:35 POP3 (pop.gmail.com): ==== Comparing server and local blobs ====

2010.05.23 11:11:35 POP3 (pop.gmail.com): ==========================================

2010.05.23 11:11:35 POP3 (pop.gmail.com): Do deletions: LoS: yes, DA: 7, DoN: yes

2010.05.23 11:11:35 POP3 (pop.gmail.com): ========= No blob changes =========

2010.05.23 11:11:35 POP3 (pop.gmail.com): ===================================

2010.05.23 11:11:35 POP3 (pop.gmail.com): Disconnecting from host

2010.05.23 11:11:35 POP3 (pop.gmail.com): [tx] QUIT

2010.05.23 11:11:36 POP3 (pop.gmail.com): <rx> +OK Farewell.

2010.05.23 11:11:36 POP3 (pop.gmail.com): Disconnected from host

2010.05.23 11:11:36 POP3 (pop.gmail.com): ========= No blob changes =========

2010.05.23 11:11:36 POP3 (pop.gmail.com): ===================================

2010.05.23 11:11:36 POP3 (pop.gmail.com): End execution

2010.05.23 11:11:36 GMail: ReportStatus: RSF_COMPLETED, hr = 0x00000000

2010.05.23 11:11:36 GMail: Synch operation completed

基於個人資料保護,[我的IP] [Session] [我的 eMail] 用上述字串取代,其他都是實際的紀錄。 <tx> 是 Send 出去的內容,<rx> 是接收到的訊息,這是滿常用的表示方法,這個東西對於收發郵件時,無法連線是一個重要的追蹤方法之一。
想要理解內容是甚麼意思,請參考 RFC 文件關於 SMTP / POP3 的通訊指令。
Categories: Office | 4 則迴響

[MVP]贈品~


晚上逛街回到家,從管理室領了一份包裹,是簽 Livy 的快遞單,裡面有冷暖保溫杯、狗牌名片包、「感謝狀」~
 
Categories: 組織 | 2 則迴響

[XPE]安裝 SQL Server 2008 r2 Express


話說 SQL Server 2008 r2 Express 資料庫上限改為 10 GB ,真是天大的福音啊~
 
安裝 SQL Server 2008 r2 之前,有幾個必要性安裝的軟體:
Windows Installer 4.5 以後
.Net framework 3.5 SP1 以後
PowerShell 1.0 以後
 
這些條件在 PC 都很容易裝,到了 XPE (Windows XP Embedded) 就有些小問題了,安裝到 .Net framework 3.5 SP1 時,會發現不給你裝…
 
經查網海得知,下面這個機碼在 XPE 上要刪除:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft|NET Framework Setup\NDP\v2.0.50727]
OCM=1
 
裡面有注意事項,需要看一下,詳見:Trying To Install .Net 3.5 On Top Of .Net 2.0 In XPe?
我自己目前是刪除安裝完後就回覆,出問題再說~
 
接下來,PowerShell 必須安裝英文版的,因為 XPE 都是英文版掛語言套件,所以不管你是哪種語系,還是得灌英文版,我是灌 PowerShell 2.0 ENG:
 
當然通常 XPE 不會有很好的硬體,所以跑一會終於跑完啦~ 搞定收工~
 
Categories: 資料庫 | 3 則迴響

[SQLServer] Server 端的 SQL Server Browser 服務沒開將無法存取具名個體


我以前開發關於 SQL Server 的案子都是直接存取預設個體,這種情況下服務只需要開 SQL Server (MSSQLSERVER) 就可以完成基本功能的存取。
 
現在要開發一個存取 SQL Server 2008 r2 Express 的案子,這個版本已經將資料庫容量上限由 4 GB 放大到 10 GB ,按照以前的習慣設定好後,到 client 端測試 telnet 192.168.137.1 會通,但就是連不上,錯誤訊息如下圖:
 
錯誤訊息內容為:

Microsoft SQL Server Native Client 版本 10.50.1600

執行連線測試…
試圖連線
[Microsoft][SQL Server Native Client 10.0]SQL Server 網路介面: 尋找指定的伺服器/執行個體時發生錯誤 [xFFFFFFFF].
[Microsoft][SQL Server Native Client 10.0]登入逾時終止
[Microsoft][SQL Server Native Client 10.0]建立 SQL Server 的連接時發生網路相關或執行個體特定錯誤。找不到伺服器或是無法存取。檢查執行個體名稱是否正確以及 SQL Server 執行個體是否設定為允許遠端連接。如需詳細資訊,請參閱《SQL Server 線上叢書》。
測試失敗!

 
跟我的差異只有在:SQL Server Browser 服務 要打開
 
好吧開起來看看,果然會通,查一下線上手冊:
ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.zh-CHT/s10de_5techref/html/3cc00d3a-487c-4cd9-a155-655f02485fa0.htm

不過,如果 SQL Server Browser 服務未執行,則下列連接沒有作用

  • 任何嘗試連接到具名執行個體卻未完整指定所有參數 (例如 TCP/IP 通訊埠或具名管道) 的元件。
  • 任何產生或傳遞伺服器/執行個體資訊的元件,稍後要重新連接的其他元件可使用此資訊。
  • 連接到具名執行個體但未提供通訊埠編號或管道。
  • 具名執行個體或預設執行個體 (若未使用 TCP/IP 通訊埠 1433) 的 DAC。
  • OLAP 重新導向程式服務。
  • 列舉 SQL Server Management Studio、Enterprise Manager 或 Query Analyzer 中的伺服器。

 因為我預設的個體安裝 SQL Server 2008 r2 Developer ,所以具名個體 SQLEXPRESS 需要啟用 SQL Server Browser 才能使用~
Categories: 資料庫 | 2 則迴響

[Office2010]MultiUpload 居然是 .Net 寫的…


話說,MultiUpload 是 Office 2003 以後,提供上傳資料到 SharePoint Service/Server 的一個 ActiveX DLL ,崁入在 IE 裡面。
 
今天我測了一下這個功能,居然發生錯誤訊息,居然是 .Net 寫的,點一下左邊的詳細按鈕,還可以看到詳細錯誤訊息:
 
我記得 Office 2007 以前都還是 VC 寫的 COM DLL ,沒想到居然改用 .Net 重寫…
Categories: 娛樂 | 發表留言

安平港周遭一日遊~


話說上周母親節本來要帶婆去四草走走,但婆被老大傳染感冒沒去成,這周剛好有敦睦艦隊來台南,就兩邊一起繞一繞~
 
這是 4/21 那天收到的贈品,應該是 R 姐寄來的,試戴的時候小女兒說:好帥好帥~ 所以今天就戴這頂出門啦~
 
先去安平港看敦睦艦隊,530 那邊沒人排隊,就先看了武夷軍艦:
 
再看了拉法葉艦級的昆明艦,居然碰到以前的陳學弟顏學妹一家人,這周滿巧的,週五晚上還碰到即將大婚的王學弟王學妹 (因為小眼睛會看網誌,為避免學弟妹們遭受到無妄之災,所以僅用姓代表):
 
今天最大的缺點就是太陽高高掛,排隊有夠長,1205 排隊上艦後,還要排隊下艦,排太久了,小女兒忍不住要上廁所,還到裡面有冷氣的地方上廁所,沒辦法,人實在太多了:
 
結束後就繞去附近的四草廟遊台江,因為大女兒校外教學搭過外海那條路線,所以我們搭綠色隧道這條路線,上船後大家坐在小椅子上:
 
鳳凰花樹後的就是四草廟:
 
沿途看了彈塗魚、招潮蟹等生態棲地:
 
前面介紹了很多生態部分,現在要進入綠色隧道了:
 
我坐在竹筏尾端,往後方拍照不會照到人:
 
婆叫我一聲,原來婆用手機拍我:
 
之後就去周氏蝦捲吃晚餐,出來時居然看到金星跟月亮那麼近:
 
又衝回安平港林默娘公園那附近比較暗的地方拍幾張:
 
今天一整天等於都在安平港附近打轉,跑了一天好累…
 
不過婆跟兩個女兒都很高興,也算值得了~
Categories: 旅行 | 發表留言

在WordPress.com寫網誌.