發表文章

目前顯示的是 10月, 2010的文章

Microsoft ASP.NET Web Matrix 有趣的簡單Web開工具

圖片
相信許多讀者都使用過ASP.NET Web Matrix這個精簡版的ASP.NET編輯器,在當時.NET 1.0/1.1的時代很風行,因為安裝檔案非常的小,只有1.2M多一點而已,卻能夠以視覺化的方式來撰寫ASP.NET的Web Form Page,現在ASP.NET Web Matrix又有新版本了,現在稱做Microsoft Web Matrix (目前為Beta2),同時他引進了新的Web Framework,能夠更容易的來開發簡單型的網站,不過它的目標會是一個簡單雲端應用程式為基礎的開發,支援Web Deploy佈署至其他協力廠商的如ADHost的Cloud Servers,而它程式檔案使用.cshtml的副檔名。安裝此工具可以從Web Platform Installer 3.0進行安裝,如下: 圖(一)、安裝畫面 安裝時會連同Microsoft SQL Server Compact 4.0 tools CTP 2、IIS Express等工具一同安裝進來,它可以與Visual Studio 2010安裝在同一台機器。安裝完成後會發現新版本與舊版本畫面的風格可說是大異其趣,如圖(二)   圖(二)、起始畫面 值得一提的是新版本在"Site From Web Gallery" 整合許多知名的線上範本,應該說比較像是Starter Kit。在這裡也大概的分門別類了一下,如圖(三) 圖(三)、Site From Web Gallery   接下來我們來進行簡單的測試與開發,眼尖的讀者應該會發現,當開啟了Web Matrix開發工具時,已經自動啟動了一個IIS應用程式伺服器,如下圖(四)   圖(三)、一個Port:2796 的IIS應用程式開發伺服器已經啟動   個位如果有上Web Matrix的網站會發現一些有趣的範例,只要簡單的幾行程式就可以得到特殊的支援與效果。而在Web Matrix網站上所提供的範例是必須安裝Microsoft的Dynamic動態資料存取元件才可以順利執行並看到結果,若您直接撰寫網站上的範例並執行會得到如下的錯誤訊息:   開發前先來了解一下什麼是cshtml檔案,所謂的cshtml其是是一種Razor 語法撰寫的ASP.

客戶端出現找不到來自來源 DCOM 之事件識別碼 10016 的描述的解法

圖片
最近客戶端Server事件檢視器常常出現一個訊息: 找不到來自來源 DCOM 之事件識別碼 10016 的描述。本機電腦可能並未安裝引發此事件的元件,或安裝已損毀。您可以在本機電腦上安裝或修復該元件。 如果事件源自其他電腦,則儲存它們時必須一併儲存顯示資訊。 下列資訊已隨附於該事件: 應用程式特定 本機 啟用 {0C0A3666-30C9-11D0-8F20-00805F2CD064} NT AUTHORITY NETWORK SERVICE S-1-5-20 通常面對如{0C0A3666-30C9-11D0-8F20-00805F2CD064} 這樣的ClassID可以調查Registry的HKEY_CLASSES_ROOT\CLSID機碼,如圖(一)。 圖(一)、找到的{0C0A3666-30C9-11D0-8F20-00805F2CD064}的ClassID機碼 發現此機碼就是Microsoft的指令碼偵錯管理員MDM.EXE (Machine Debug Manager)所註冊的機碼。因為ASP.NET所執行的Network Service並沒有權限進行偵錯而導致此訊息的發生。如圖(二) 圖(二)、為Microsoft的指令碼偵錯管理員MDM.EXE (Machine Debug Manager)   解決方式可以透過Dr. Watson來改變系統預設的偵錯管理員,可在開始工具列執行: drwtsn32 –i 引數-i表示Install的意思,這會將Dr. Watson安裝為系統預設的錯誤處理器此問題即可解決! 註:此問題解法只適用於Windows XP/2003,在Vista/7/2008機制以不同,也找不到機碼{0C0A3666-30C9-11D0-8F20-00805F2CD064},當然也找不到drwtsn32.exe

實作Silverlight 4 的RSS閱讀器

圖片
在黃忠成老師10/6發表的Expression Blend 4中的資料繫結一文中,小弟體驗到Silverlight 4 與Expression Blend 4強大的資料繫結功能,也受益匪淺。也開始探討其他的應用方式。因為在Silverlight中可繫結的資料也可以是XML檔案,甚至是位於其他網站上的XML的檔案、如RSS等,因此在Expression Blend 4中要製作一個Silverlight的RSS閱讀器非常的容易。 因為筆者隨機瀏覽到聯合新聞網的網站,因此就以新聞網的 (RSS資訊服務 –> 焦點要聞 –> 焦點) 的RSS連結作為本次的範例: 下面以英文版Expression Blend 4解說這個範例。 1.首先以Expression Blend 4開啟一個包含Web Site 的 Silverlight 4的專案,並在”Data”的頁籤選擇"Import Sample Data from XML.."。 2.在Import Sample Data from XML的視窗中將剛才複製的連結貼上。 3.接著會在Data的頁籤下的Project下面出現focusSampleDataSource的資料來源, 4.在畫面上拖曳一個DataGrid。 5.在這個focusSampleDataSource的資料來源中包含一個rss的XML資料基礎結構,其中在channel下的ItemCollection就是我們所需要的,請將他拖曳至DataGrid上,此動作Expression Blend 4會自動完成資料繫結的動作。 6.此時Expression Blend 應該會替DataGrid產生DataGrid.Columns 的XAML,如下紅色圈起來處。 而且在Expression Blend 4的設計畫面也可以看見預覽的資料,不過因為欄位的順序不是我們要的,因此筆者將title移至為第一個欄位,並且將欄位名稱 title改為"標題"、link改為"連結"、pubDate改為"發布日期"。此時設計模式畫面應該會是如下的畫面: 現在基本的畫面雛形已經出來了,可以開始寫程式了。在channel下的itemCollection中有

在Win7/2008 Server 使用PowerShell老是出現已停用指令碼執行的解決辦法

圖片
在Windows 7/2008 Server點選執行PowerShell時每次都會出現一個警告訊息如下圖: 這是因為基於安全起見,PowerShell後來加入了執行原則,執行原則包括了PowerShell安全性策略的一部份,他必須要您的指令碼檔需要數位簽屬後才可以執行,包括PowerShell的設定檔也是。 這裡PowerShell也提供了cmdlet的命令Set-ExecutionPolicy 可以修改執行原則的設定。在Set-ExecutionPolicy包含了6種原則設定詳細說明如下(系統預設為第一種): 1. Restricted       預設執行原則。允許執行個別命令,但無法執行指令碼。無法執行所有的指令碼檔案,包括格式化和組態檔 (.ps1xml)、模組指令碼檔案 (.psm1) 和 Windows PowerShell 設定檔 (.ps1)。 2. AllSigned       指令碼可以執行。所有的指令碼和組態檔都需經過受信任的發行者簽署,包括本機電腦上撰寫的指令碼在內。 在執行來自尚未分類為受信任或不受信任之發行者的指令碼之前,對您進行提示。 執行來自網際網路以外來源的未簽署指令碼以及已簽署 (但居心不良) 的指令碼會有風險。 3. RemoteSigned       指令碼可以執行。 從網際網路下載的指令碼和組態檔都必須有受信任發行者的數位簽章 (包括由電子郵件程式和立即訊息程式所下載)。 已在本機電腦上執行及撰寫的指令碼 (並非從網際網路所下載) 不需要數位簽章。 執行已簽署但惡意的指令碼會有風險。 4. Unrestricted       可以執行未經簽署的指令碼  (執行惡意的指令碼會有風險)。 在執行從網際網路下載的指令碼和組態檔之前,對使用者提出警告。 5. Bypass       不會封鎖任何項目,而且沒有警告或提示。 在這個執行原則所針對的組態中,Windows PowerShell 指令碼是建立來提供較大的應用程式使用,或是做為本身具有安全性模型之程式的基礎。 6. Undefined       目前的範圍中沒有設定執行原則。 如果所有範圍中的執行原則是 Undefined,則有效的執行原則為  Restricted,這是預設的執行原則。 此說是筆者由