Time of Update: 2018-12-07
今天在Delphil園地中看到一個外掛軟體叫 Delphi 7 Lite v2.02 還整合D2007的RTL,聽說D2007的編譯速度很快,那就下來試試吧。沒試不知道,試了嚇一跳,啟動Delphi 7 Lite v2.02 都是錯誤,而且程式還不能編譯,而後我立馬刪除,當我重啟原來的D7時,發現安裝的控制項都沒了。還是本分點一個個控制項的安裝,裝完後,又發現個大問題,不能調試,我暈了。後來在網上找到了答案:關閉D7,重新註冊D:\Program Files\Common
Time of Update: 2018-12-07
最近在用Eurekalog做項目的錯誤報表,以方便於BUG的錯誤修正。發現無法正常的發郵件,密碼什麼的都是正確的,後來發現,Eurekalog用的是 8Bit MIME編碼,而國內的大都不支援這種編碼,後來發現SINA的SMTP支援(又發現Foxmail也支援的)。 如果大家有自己的伺服器需要實現這個功能的話,最好把8Bit MIME編碼也加進去,這樣最安全了。 附:EurekaLog v6.0.6 Enterprise
Time of Update: 2018-12-07
Microsoft Word具有一項“字數統計”功能,可以統計出文本中漢字和英文的個數,其設計思路就是通過把字元轉換為ASCII碼數值來進行判斷,Ord函數就可以把字元轉換為對應的ASCII碼數值,其中值為33-126為鍵盤可使用字元,值127以上的為未知字元,即漢字。下面完成一個示範程式,選擇“File|New Application”功能表命令,在預設的表單中添加1個Memo組件、2個Label組件和2個Button組件,完成對各個組件的屬性設定及布局之後,在“字數統計”
Time of Update: 2018-12-07
開發環境:Asp.NET 4.5, Entity Framework 5.0, Visual Studio 2012, Windows 7問題描述:綁定IQueryable<T>類型資料來源到DropdownList, 得到錯誤“不支援直接到儲存查詢(DbSet、DbQuery、DbSqlQuery)的資料繫結。應使用資料填充 DbSet (例如通過對 DbSet 調用 Load),然後綁定到本機資料。對於 WPF,綁定到 DbSet.Local。對於 WinForms,綁定到
Time of Update: 2018-12-07
事實上,解決這個問題的思路很簡單。那就是要找出漢字表中拼音首字母分別為“A”到“Z”的漢字內碼範圍,這樣對於要檢索的漢字,只需要檢查它的內碼位於哪一個首字母的範圍內,就可以判斷出它的拼音首字母。下面完成一個示範程式,選擇“File|New Application”功能表命令,在預設的表單中添加1個Label組件、1個Bevel組件、1個Edit組件和2個ListBox組件。完成對各個組件的屬性設定及布局之後,在Edit組件的OnChange事件中添加如下所示的代碼。 程式碼Procedure T
Time of Update: 2018-12-07
枚舉類型又是一種自訂有序類型。在枚舉類型中,你列出所有該類型可能取的值,而不是指定現有類型的範圍。換句話說,枚舉類型是個可取值的序列。見下例:typeColors = (Red, Yellow, Green, Cyan, Blue, Violet);Suit = (Club, Diamond, Heart, Spade);序列中每個值都對應一個序號,序號從0開始計數。使用Ord 函數,即可得到一個枚舉類型值的序號。例如,Ord (Diamond)
Time of Update: 2018-12-07
在自訂群組件中使用枚舉類型的屬性時,如用枚舉類型的預設序列時如: TPotencesType = (PT_View, PT_Modify, PT_Delete, PT_Insert, PT_Auditing, PT_Dispose, PT_Checking ); 可以正常的在設計時來選擇其屬性,如果用自訂的序列時如: TPotencesType = (PT_View=1, PT_Modify=3, PT_Delete=4,
Time of Update: 2018-12-07
Function IsEMail(EMail: String): Boolean;var s: String; ETpos: Integer;begin ETpos:= pos('@', EMail); //擷取@符號的位置 if ETpos > 1 then begin s:= copy(EMail,ETpos+1,Length(EMail)); //截取子串 if (pos('.', s) > 1) and (pos(
Time of Update: 2018-12-07
前段時間一直在搞一個項目,常用到ListView,而且常把Record放入ItemData。一開始我就把對ListView的常規操作都寫入一個Dll(包括批量的添加資料,儲存資料,載入資料),方便於以後的使用。這是惡夢的開始。 這樣做不要緊,等項目越做越深入時,越來越多的問題突現。只要對ListView操作不管什麼操作,添加、刪除,就是點擊某行,就會跳出“Invalid pointer operation”,或者“Access violation
Time of Update: 2018-12-07
DECLARE @sp_name nvarchar(400)DECLARE @sp_content nvarchar(2000)DECLARE @asbegin intdeclare @now datetimeselect @now = getdate()DECLARE sp_cursor CURSOR FOR SELECT object_name(id)FROM sysobjectsWHERE xtype = 'P' AND type = 'P' AND crdate <
Time of Update: 2018-12-07
Delphi7 調用VS.NET 2005開發的基於.NET 2.0的WebService時發生了錯誤。查閱資料 http://www.community.borland.com/article/borcon/files/4132/paper/4132.html 發現原來Delphi7用戶端雖然支援WebService的RPC|Encoded 和 Document|Literal編碼,但 預設的是使用RPC。而.NET
Time of Update: 2018-12-07
賦值:type PAllHidenDate = ^AllHidenDate; AllHidenDate = record PriceID: Integer; OrderNumber: string; State: Integer; PriceData: WideString; end;var HidenData: PAllHidenDate;begin with lvDataViewAll.Items.Add
Time of Update: 2018-12-07
前幾天項目的一部份已經交付給客戶使用,反饋回的意見還算少,主要問題是不穩定,在不經意的檢查中,發現是記憶體流失。記憶體流失對於Delphi來說是致命的,因為Delphi沒有一樣工具可以像樣的檢查記憶體流失(除了彙編視窗,有誰能用它來檢查記憶體流失我會相當的佩服)。
Time of Update: 2018-12-07
本人在"逛網"的時候,看到一些很適合驅動開發初學者的引導,特此貼出,希望對大家有協助。(當然我也是初學者)以下為[懶人日記]部落格連結,說得很細,一步一步引導你進入驅動開發的天地:---------------------------------------------------------------------------------1.驅動程式概述http://borland.mblogger.cn/doublefisher/posts/24474.aspx2.驅動程式開發——工具篇ht
Time of Update: 2018-12-07
隨著項目的失敗,這些天一直在總結失敗的原因,到底是為什嗎? 一、技術層面 1、少用指標類型,多用類。 雖然指標類型能有效節約記憶體和加快運行速度,但指標遠沒有類來得穩定及易用。在日常使用中,往往指標對應的是record類型,例如 1 PDataColumns = ^DataColumns;2 DataColumns = record3 Name: string;4 Value: string;5 Dat
Time of Update: 2018-12-07
假設你需要在TForm1的Panel1上顯示TForm2,最簡單的方法是改寫TForm2.TForm2=class(TForm)private ...public constructor Create(AOwner: TComponent); override;end;implementationconstructor TForm2.Create(AOwner: TComponent);begin inherited; Parent := (AOwner as TWinControl);
Time of Update: 2018-12-07
通常在Delphi的應用程式中,我們會調用到很多的資源,例片,動畫(AVI),聲音,甚至於別的執行檔案。當然,把這些資源分布到不同的目錄不失為一個好辦法,但是有沒有可能把這些資源編譯成標準的windows資源從而連結到一個執行檔案裡面呢? 我們可以自己做一個RC檔案,例如 sample.rc ,RC檔案其實就是一個資源檔的描述文本,通過“記事本”程式建立就行了。然後可以輸入一些我們要定義的資源,例如: MEN BITMAP
Time of Update: 2018-12-07
WinExec主要運行EXE檔案。如:WinExec(’Notepad.exe Readme.txt’, SW_SHOW); ShellExecute不僅可以運行EXE檔案,也可以運行已經關聯的檔案。 首先必須引用shellapi.pas單元:uses ShellAPI; 1.標準用法 ShellExecute函數原型及參數含義如下: function ShellExecute(hWnd: HWND; Operation, FileName,
Time of Update: 2018-12-07
我們知道,在Delphi中,如果一個MDI Form非主表單的話,我們就不能建立任何MDI Child Form,實在是遺憾,不過還是可以解決的。Kingron查看了VCL的原始碼,發現在建立表單的時候,系統會檢測MainForm是不是nil和MainForm.ClientHandle是不是nil,對於MainForm就是MDI
Time of Update: 2018-12-07
DLL方式封裝MDI子表單是一種常用的軟體開發技術,它的優點:人員可以負責某一個模組的編寫包括(介面+邏輯),可以互不干擾,模組開發完成後,主程式統一調用。程式升級,當程式升級時,不用編譯主exe檔案,更新某個DLL就可以升級。可以根據客戶不同的需求、價錢給他們不同的模組。(奸商都願意用這招)