void GetAgentsInfo(long Count, long AgentIDs,long* AgentStates, long* AgentTypes){g_oLog.print("SendEvtGetAgentsInfo AgentTypes=%p,%ld ,AgentStates=%p,%ld \n",AgentTypes,*AgentTypes,AgentStates,*AgentStates);for (int i=0;i<Count;i++) { char
從字面上看,GetHRForException函數的作用很簡單:得到Exception所對應的HRESULT的值。但是,GetHRForException還會做一件事情:設定當前線程的IErrorInfo使之指向該Exception(嚴格來說是獲得Exception的CCW中的IErrorInfo介面指標)。如果對IErrorInfo不熟悉的朋友們可以把IErrorInfo看成COM版本的GetLastError或者errno。設定IErrorInfo會導致之後的代碼如果使用GetErrorIn
昨天使用C++ builder整理一些項目的時候,發現編譯器不能識別“蝶”子,也就是說放項目的檔案夾命名不能帶有這個“蝶”子關鍵字,否則編譯有問題.由此,我們可以想像,應該還有其他不能識別關鍵字的,只是我們沒有發現而已。因此,我們在開發項目的時候最好的命名是英文,盡量減少用中文,特別要避免生僻字.--------此外,在vs2003的項目中,給介面添加資源圖片的時候,項目也不要放在帶有中文,要不然識別不了.-------------
這次我主要講RCW的原理,生命週期,引用計數,套間,System.__ComObject,事件調用原理等內容。CCW由於時間限制就不涉及了,畢竟大家還是以使用RCW為主。感興趣的朋友可以在下面註冊:公用語言運行庫(CLR)開發系列課程(4):COM Interop進階 (Level 300)講 師:張羿 課程簡介:本次課程我們將介紹.NET調用COM組件上使用上的一些常見問題,特別是RCW建立、釋放、和套間的互動等比較容易出錯的地方。之後,我們將簡介CCW的使用方法。 推薦指數:
Access資料庫的語句:對關鍵字進行了轉義,將關鍵字使用“[”和“]”括起來;Access關鍵字如下: -A ADD ALL Alphanumeric ALTER AND ANY Application AS ASC Assistant AT
大家好。距離上次我們發布在CodePlex上的新版本TlbImp已經過了快半年了。在這半年的時間內,除了主要進行.NET 4.0相關的新功能開發之外,我們上海CLR小組也沒有忘記進行TlbImp相關功能的繼續開發,於今年3月9日再次發布了TlbImp的一個新版本:http://www.codeplex.com/clrinterop/Release/ProjectReleases.aspx?ReleaseId=17579這次版本中我們引入了兩個重要功能:1. 通過規則自訂Interop
這個星期三也就是5月19日下午2點半開始我將為大家帶來CLR開發課程系列之六。這一次我打算講一些.NET比較本質的內容:Metadata和IL代碼。歡迎希望對.NET的運作機理和工作方式能夠有進一步深入瞭解的朋友收聽。本次講座的具體資訊如下:公用語言運行庫(CLR)開發系列課程(6):.NET中繼語言(IL)入門 (Level 200)講 師:張羿 課程簡介:.NET本質上是一個執行中繼語言(Intermediate Language) 代碼的虛擬機器,任何在.NET上啟動並執行語言(如C#)
這次我將為大家講解如何使用.NET 4.0中的契約式設計(也可以在.NET 2.0+中使用,需要額外下載安裝包),歡迎有興趣的朋友收聽。地址為:http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032406872&Culture=zh-CN.NET 4.0中的新特性系列課程(2):契約式設計 (Level 200)講 師:張羿 課程簡介:.NET
在最新一期的.NET 4.0新特性系列課程中,我和我的同事將給大家介紹Beta1中的一些新特性,具體資訊如下:.NET 4.0中的新特性系列課程(3):.NET 4.0 Beta1 Interop 新特性介紹 (Level 200)講 師:張羿、朱永泰 課程簡介:.NET 4.0 Beta1在Interop,也就是互操作功能上有了較大的改進,主要是能夠協助開發人員更自由的自訂互操作的行為,以及尋找互操作中出現的錯誤。這次講座我們主要介紹4個新特性:NOPIA、Customization of
1.複製的時候會有空格比如dr["StateId"]; ,很容易寫成dr["StateId "];這樣就出錯了2.從資料庫讀取的資料要加到集合中去,如 list.Add(us);3.背景代碼不能擷取前提的控制項Id,需要轉換為web應用程式4.電話的用bigint 然後轉換為Convert.ToInt64。。。一般整型轉換為Convert.ToInt325.連結的處理<link rel="stylesheet" type="text/css"
3.匯入的http://topic.csdn.net/t/20060421/14/4703786.htmlhttp://topic.csdn.net/t/20020423/10/668787.html4.ddl與gv
前2天通過了新太的筆試和面試,自己當時去面試的正式員工的C++軟體工程師,卻被告知還沒有畢業,不能擔任此職務,不過可以過來實習。花了點時間,打聽新太的實習生情況,瞭解有:新太的實習工資才1千多(不知道具體是多少,聽說一律1千),實習時間為半年。想了一天,考慮了好多,決定還是去新太實習。原因有: 1.新太是一個前景不錯的IT軟體行業公司。 2.自身雖然有很多的項目開發經驗,但是基礎專業知識不夠紮實。 3.離俺的學校近,就在學校對面,免去公交的痛苦。
1)flex的原始碼如下<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
前段時間花了幾天一直在用WinDbg調試一個比較棘手的Bug。這個Bug是C# Team那邊發現的,他們的Testcase跑大概10分鐘左右會出一個在CLR內部的ASSERT。比較難調試的主要原因在於ASSERT表明一個全域的資料結構出現了問題,本來不應該用完的數組卻已經用完了(因為按照設計,這個數組是邊使用邊清理的,是不會用完的)。初步想到的有下面幾種方案來調試:1. 設定資料斷點2. 一步一步調試3.
“開始” —> “運行” —> 鍵入MMC命令 彈出如下視窗: “檔案” —> “添加/刪除嵌入式管理單元(M)”或者直接按Ctrl+M,彈出下面視窗: 單擊下面的“添加”按鈕,選中“Microsoft SQL 企業管理器”: 單擊“添加”按鈕,添加成功,直接關閉這個視窗,然後在上面“添加/刪除嵌入式管理單元”的列表中可以看到了企業管理器了,同時點擊“確定”按鈕,在“控制台1 ”上出現Microsoft SQL Servers。 最後,選擇“檔案” —>
1)flex的代碼如下:<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955"
1.在設定檔裡面 <configuration> <appSettings> <add key="ConnectionString" value="server=localhost;database=myWebDB; UID=sa;pwd=123321"></add> </appSettings> <connectionStrings/>在頁面後台裡面SqlConnection myConnection =
CLR小組中存在著大量的迴歸測試,這些迴歸測試會定期執行來發現CLR中的Bug,Developer在Checkin之前,也需要執行這些測試的一部分(大概是10小時左右,如果全部跑的話估計要好幾天)。這些測試對於保證CLR的品質是至關重要的。有時候,這些測試會偶爾失敗,比如跑100次失敗大概一到兩次,有些極端的例子甚至是10000次才失敗一次。像這種問題通常是很難調試的。在前面調試Bug的神兵利器:通過WinDbg條件斷點收集Log這篇文章中,我講到了如何通過條件斷點收集各種資訊來判斷Bug究竟出
不知道各位使用.NET開發的朋友是否有遇到過一些非常奇怪的問題而不知道如何下手呢?這個時侯CLR本身提供的StressLog功能就非常有用了。這個StressLog可以在很多時候把CLR所做的事情記錄下來,比如,對於一個很簡單的最後拋出異常的.NET程式Log大致如下: STRESS LOG:facilitiesToLog = 0x8000fffflevelToLog = 16MaxLogSizePerThread = 0x20000 (131072)MaxTotalLogSize = 0x20
一次Reboot=975年在開始本文之前先做一個小調查:有多少朋友喜歡Reboot?答案A:我喜歡,每天都要Reboot