Feeds:
文章
迴響

Archive for 2006 年 01 月

論蒙福與咒詛

申命記 28:1 「你若留意聽從耶和華你神的話謹守遵行他的一切誡命,就是我今日所吩咐你的,他必使你超乎天下萬民之上。
申命記 28:2 你若聽從耶和華你神的話,這以下的福必追隨你,臨到你身上:
申命記 28:3 你在城裡必蒙福,在田間也必蒙福。
申命記 28:4 你身所生的,地所產的,牲畜所下的,以及牛犢、羊羔,都必蒙福。
申命記 28:5 你的筐子和你的摶麵盆都必蒙福。
申命記 28:6 你出也蒙福,入也蒙福。
申命記 28:7 「仇敵起來攻擊你,耶和華必使他們在你面前被你殺敗;他們從一條路來攻擊你,必從七條路逃跑。
申命記 28:8 在你倉房裡,並你手所辦的一切事上,耶和華所命的福必臨到你。耶和華你神也要在所給你的地上賜福與你。
申命記 28:9 你若謹守耶和華你神的誡命,遵行他的道,他必照著向你所起的誓立你作為自己的聖民。
申命記 28:10 天下萬民見你歸在耶和華的名下,就要懼怕你。
申命記 28:11 你在耶和華向你列祖起誓應許賜你的地上,他必使你身所生的,牲畜所下的,地所產的,都綽綽有餘。
申命記 28:12 耶和華必為你開天上的府庫,按時降雨在你的地上。在你手裡所辦的一切事上賜福與你。你必借給許多國民,卻不至向他們借貸。
申命記 28:13
申命記 28:14 你若聽從耶和華你神的誡命,就是我今日所吩咐你的,謹守遵行,不偏左右,也不隨從事奉別神,耶和華就必使你作首不作尾,但居上不居下。」
申命記 28:15 「你若不聽從耶和華你神的話,不謹守遵行他的一切誡命律例,就是我今日所吩咐你的,這以下的咒詛都必追隨你,臨到你身上:
申命記 28:16 你在城裡必受咒詛,在田間也必受咒詛。
申命記 28:17 你的筐子和你的摶麵盆都必受咒詛。
申命記 28:18 你身所生的,地所產的,以及牛犢、羊羔,都必受咒詛。
申命記 28:19 你出也受咒詛,入也受咒詛。
申命記 28:20 耶和華因你行惡離棄他,必在你手裡所辦的一切事上,使咒詛、擾亂、責罰臨到你,直到你被毀滅,速速地滅亡。
申命記 28:21 耶和華必使瘟疫貼在你身上,直到他將你從所進去得為業的地上滅絕。
申命記 28:22 耶和華要用癆病、熱病、火症、瘧疾、刀劍、旱風(或作:乾旱)、霉爛攻擊你。這都要追趕你,直到你滅亡。
申命記 28:23 你頭上的天要變為銅,腳下的地要變為鐵。
申命記 28:24 耶和華要使那降在你地上的雨變為塵沙,從天臨在你身上,直到你滅亡。
申命記 28:25 「耶和華必使你敗在仇敵面前,你從一條路去攻擊他們,必從七條路逃跑。你必在天下萬國中拋來拋去。
申命記 28:26 你的屍首必給空中的飛鳥和地上的走獸作食物,並無人鬨趕。
申命記 28:27 耶和華必用埃及人的瘡並痔瘡、牛皮癬與疥攻擊你,使你不能醫治。
申命記 28:28 耶和華必用癲狂、眼瞎、心驚攻擊你。
申命記 28:29 你必在午間摸索,好像瞎子在暗中摸索一樣。你所行的必不亨通,時常遭遇欺壓、搶奪,無人搭救。
申命記 28:30 你聘定了妻,別人必與他同房;你建造房屋,不得住在其內;你栽種葡萄園,也不得用其中的果子。
申命記 28:31 你的牛在你眼前宰了,你必不得吃他的肉;你的驢在你眼前被搶奪,不得歸還;你的羊歸了仇敵,無人搭救。
申命記 28:32 你的兒女必歸與別國的民;你的眼目終日切望,甚至失明,你手中無力拯救。
申命記 28:33 你的土產和你勞碌得來的,必被你所不認識的國民吃盡。你時常被欺負,受壓制,
申命記 28:34 甚至你因眼中所看見的,必致瘋狂。
申命記 28:35 耶和華必攻擊你,使你膝上腿上,從腳掌到頭頂,長毒瘡無法醫治。
申命記 28:36 「耶和華必將你和你所立的王領到你和你列祖素不認識的國去;在那裡你必事奉木頭石頭的神。
申命記 28:37 你在耶和華領你到的各國中,要令人驚駭、笑談、譏誚。
申命記 28:38 你帶到田間的種子雖多,收進來的卻少,因為被蝗蟲吃了。
申命記 28:39 你栽種、修理葡萄園,卻不得收葡萄,也不得喝葡萄酒,因為被蟲子吃了。
申命記 28:40 你全境有橄欖樹,卻不得其油抹身,因為樹上的橄欖不熟自落了。
申命記 28:41 你生兒養女,卻不算是你的,因為必被擄去。
申命記 28:42 你所有的樹木和你地裡的出產必被蝗蟲所吃。
申命記 28:43 在你中間寄居的,必漸漸上升,比你高而又高;你必漸漸下降,低而又低。
申命記 28:44 他必借給你,你卻不能借給他;他必作首,你必作尾。
申命記 28:45 這一切咒詛必追隨你,趕上你,直到你滅亡;因為你不聽從耶和華你神的話,不遵守他所吩咐的誡命律例。
申命記 28:46 這些咒詛必在你和你後裔的身上成為異蹟奇事,直到永遠!
申命記 28:47 「因為你富有的時候,不歡心樂意地事奉耶和華你的神,
申命記 28:48 所以你必在飢餓、乾渴、赤露、缺乏之中事奉耶和華所打發來攻擊你的仇敵。他必把鐵軛加在你的頸項上,直到將你滅絕。
申命記 28:49 「耶和華要從遠方、地極帶一國的民,如鷹飛來攻擊你。這民的言語,你不懂得。
申命記 28:50 這民的面貌兇惡,不顧恤年老的,也不恩待年少的。
申命記 28:51 他們必吃你牲畜所下的和你地土所產的,直到你滅亡。你的五穀、新酒,和油,以及牛犢、羊羔,都不給你留下,直到將你滅絕。
申命記 28:52 他們必將你困在你各城裡,直到你所倚靠、高大堅固的城牆都被攻塌。他們必將你困在耶和華你神所賜你遍地的各城裡。
申命記 28:53 你在仇敵圍困窘迫之中,必吃你本身所生的,就是耶和華你神所賜給你的兒女之肉。
申命記 28:54 你們中間,柔弱嬌嫩的人必惡眼看他弟兄和他懷中的妻,並他餘剩的兒女;
申命記 28:55 甚至在你受仇敵圍困窘迫的城中,他要吃兒女的肉,不肯分一點給他的親人,因為他一無所剩。
申命記 28:56 你們中間,柔弱嬌嫩的婦人,是因嬌嫩柔弱不肯把腳踏地的,必惡眼看他懷中的丈夫和他的兒女。
申命記 28:57 他兩腿中間出來的嬰孩與他所要生的兒女,他因缺乏一切就要在你受仇敵圍困窘迫的城中將他們暗暗的吃了。
申命記 28:58 「這書上所寫律法的一切話是叫你敬畏耶和華你神可榮可畏的名。
申命記 28:59 你若不謹守遵行,耶和華就必將奇災,就是至大至長的災,至重至久的病,加在你和你後裔的身上,
申命記 28:60 也必使你所懼怕、埃及人的病都臨到你,貼在你身上,
申命記 28:61 又必將沒有寫在這律法書上的各樣疾病、災殃降在你身上,直到你滅亡。
申命記 28:62 你們先前雖然像天上的星那樣多,卻因不聽從耶和華你神的話,所剩的人數就稀少了。
申命記 28:63 先前耶和華怎樣喜悅善待你們,使你們眾多,也要照樣喜悅毀滅你們,使你們滅亡;並且你們從所要進去得的地上必被拔除。
申命記 28:64 耶和華必使你們分散在萬民中,從地這邊到地那邊,你必在那裡事奉你和你列祖素不認識、木頭石頭的神。
申命記 28:65 在那些國中,你必不得安逸,也不得落腳之地;耶和華卻使你在那裡心中跳動,眼目失明,精神消耗。
申命記 28:66 你的性命必懸懸無定;你晝夜恐懼,自料性命難保。
申命記 28:67 你因心裡所恐懼的,眼中所看見的,早晨必說,巴不得到晚上才好;晚上必說,巴不得到早晨才好。
申命記 28:68 耶和華必使你坐船回埃及去,走我曾告訴你不得再見的路;在那裡你必賣己身與仇敵作奴婢,卻無人買。」
廣告

Read Full Post »

 
1. 什麼是 Bootstrapper ?
Bootstrapper 是一個精簡的安裝封裝器,用來安裝應用程式一些必要資料(類似 .Net Framework 或 MDAC),算是先佈置一個應用程式可以執行的環境,你可以指定應用有哪些是需要預先安裝的檔案。當 Bootstrapper 被觸發的時候,這些必要的檔案會被下載安裝在用戶的電腦中。
 
2. Bootstrapper 也會安裝在 ClickOnce 應用程式中嗎?
原則上是肯定的,當 Bootstrapper 安裝預先指定的必要檔案之後,就會觸發 ClickOnce 的 deployment manifest 進行應用程式的安裝。
 
3. bootstrapper 可以安裝我自定的檔案嗎?
是,bootstrapper 非常具有可擴充性,你可以使用第三方的安裝工具並自訂所需的檔案。
 
4. 我可以決定 bootstrapper 安裝檔案的所在位置嗎?
是,bootstrapper可以從任何指定的位置下載這些必要檔案。
 
5. bootstrapper 安裝的元件是否能夠自動進行更新?
否,bootstrapper 必須明確的執行才可進行更新。
 
6. bootstrapper 是否需要足夠的權限才能執行?
技術上是不需要,但實務上是需要的。這些檔案幾乎全部都是必要的,例如 .Net Framework,無須具有特別的權限。
 
7. 我可以在 ClickOnce 應用程式中使用 MFC 或 VB6 建立的 COM 元件嗎?
是,由幾個方法可以達成,其中一個比較好的方法是透過 Windows XP 稱之為"註冊自由的COM( registry free COM )",這個功能允許你應用程式中使用的COM元件不須註冊在全域(global)空間,Visual Studio 2005 原生支援該功能。不過要注意的是,這個方法只適用於 XP 或更新的作業系統版本,像Windows 2000 就不支援這個方法。第二個方法是將這些COM元件以靜態方式散佈,並透過COM元件的進入點方式來直接使用,這個方法可以適用於全部的作業系統,不過這個方法的技術門檻較高也較不易了解。第三個方法是將這些 COM 元件放在 bootstrapper 中進行安裝,這個方法最大的限制在於 "ClickOnce" 無法自動更新 bootstrapper 安裝的元件。
 
8. bootstrapper 可以在智慧型裝置上運作嗎?
否。
 

Read Full Post »

ClickOnce 部署筆記[1]

ClickOnce 應用程式部署屬於 .Net Framework 2.0 的新功能,這個功能可以讓你透過一個網頁簡單的執行一之程式,另外程式的更新也是透過一個伺服器來統一管理,所以,無須到每個使用者端進行程式更新。這有點類似使用網頁的經驗,因為,網頁也是統一放置在 web server 上,所以,每個使用者總是能夠瀏覽到最新的網頁,只是 ClickOnce 部署的是應用程式,所以流程稍微複雜一些,不過基本流程差不多,首先會檢查你的系統是否已經安裝該應用程式,如果沒有安裝,則會該始安裝目前最新的版本,如果已經有安裝,則檢查目前是否有更新的版本,如果有則更新,否則就結束。
 
擁有 ClickOnce 功能的應用程式,可以透過自動或手動方式來支援更新。自動更新方式是程式啟動前/結束前自動檢查更新程式,手動更新則是透過 ClickOnce API(System.Deployment)以程式的方法來控制更新。
Visual Studio 2005 支援 ClickOnce 部署方式,使用上相當的簡單,如同我之前張貼的
"2006.01.19 關於 Click Once 部署的一些資料收集"
只需要透過幾個簡單的步驟就可以完成 ClickOnce 部署。不過這個方式不知是不是我還不了解整個技術背景的關係,使用上雖然方便,可是似乎不太實用。例如無法指定安裝路徑、程式相依檔案的問題等等…
 
[1]提到如果要部署的應用程式是透過網路,那最好明確告知 ClickOnce 程式的大小,如此可以使用 HTTP 壓縮功能來降低檔案的尺寸。ClickOnce 應用程式進行安裝的時候是透過 bootstrapper 檔案。
 
ClickOnce 部署方式並非沒有任何缺點,例如他無法安裝驅動程式或更新 Registry。此時就需要搭配 MSI 安裝方式。這也是目前我遇到的問題,應用程式有一些屬於自己的檔案,可是如果透過 VS 的 ClickOnce 動更新功能,會導致應用程式無法安裝在特定的位置,且程式所屬的檔案因為每次版本更新後匯隸屬於一個不同的安裝目錄,導致就有版本的檔案無法重複使用,所以,我覺得除非是很單純的程式,否則較佳的安裝部署方式可能是 MSI + ClickOnce,第一次先透過 MSI 安裝整個應用程式,之後的 patch 更新透過 ClickOnce。

Read Full Post »

介面改用 XAML 格式,不同於 Mozila 的 XUL … 不過都是 XML 只不過定義的 element 不同…
 
iThome 新聞
 
Microsoft
 
 

Read Full Post »

兩款系統時間校正工具

最近電腦時鐘怪怪的…. lst 和 gild 貢獻了兩套好用的系統時間校正軟體
 
* 中華電信的 NTPClock
http://toget.pchome.com.tw/intro/desktop_program/527_dl.html
簡單好用免設定
有需要的下載來玩看看。

Read Full Post »

Read Full Post »

網址檢查程式

今天為了某個理由還留在公司看書,剛好看到 HttpRequest … 寫了一個網址檢查程式如下
 
<body>
<label>請輸入網址:<label><input type = ‘text’ id = ‘txtURL’ value = "http://www.google.com.tw"/><button id = ‘btnSend’ onclick = ‘btnSend_click();’>查詢</button><br/>
<label>狀態:<label><label id = ‘lblStatus’></label>
<script type = ‘text/javascript’>
<!–//
 var request = new ActiveXObject("Microsoft.XMLHTTP");
 var txtURL = document.getElementById(‘txtURL’);
 var lblStatus = document.getElementById(‘lblStatus’);
 function btnSend_click(){  
  var url = txtURL.value;
  try{
   request.open("GET",  url, false);
   request.send();

  }catch(e){
   //alert(e);
  }
  lblStatus.innerText = request.status + " " +  request.statusText;
 }
//–>
</script>
</body>

整個程式相當簡單,就是向使用者輸入的網址送出 GET  …. 然後等待 Server 回應….
 

Read Full Post »

Older Posts »