這是我第一次安裝Lockbox的庫。我從sourceforge下載了3.4.3版,並且安裝了Delphi 7.第一步是讓這個sucker在Delphi 7下編譯,這真是太糟糕了。我確實希望組件安裝後更易於使用。如何將LockBox 3安裝到Delphi 7中?
好的。我有一個看起來像這樣的單位。
unit uTPLb_StrUtils;
interface
uses
SysUtils, uTPLb_D7Compatibility;
function AnsiBytesOf(const S: string): TBytes;
implementation
function AnsiBytesOf(const S: string): TBytes;
begin
//compiler chokes here
**Result := TEncoding.ANSI.GetBytes(S);**
end;
end.
順便說一下,兼容性單元將TBytes定義爲TBytes =字節的打包數組;
關於TEncoding的Delphi 7扼流圈,因爲它只存在於D2009 +中。我該用什麼替換這個功能?
如果'AnsiString'爲空,則訪問'S [1]'將會出現邊界錯誤。 – 2014-09-23 16:58:44
@RemyLebeau,剛剛用我的XE2進行測試,並沒有,嗯。 – 2014-09-23 17:03:31
在我的XE2上,如果啓用了範圍檢查,訪問空白'AnsiString'的'S [1]'會引發一個'ERangeError',否則當從地址$ 00000000讀時會引發一個'EAccessViolation'(這有意義,因爲空字符串是一個'nil'指針)。 – 2014-09-23 17:38:08