德爾福XE5和SQL Server 2012我有這樣的問題:當我打開表單我連接到數據庫和我賦值我的領域,這樣的 -FireDac現場沒有發現
dbeCustomer.DataSource := DataForm.SQLDS;
dbeCustomer.DataField := 'Customer';
一切運作良好,直到我嘗試運行獨立的.exe程序。然後我收到一個錯誤 - '沒有找到'字段'客戶'。也就是說,如果我從Debug文件夾運行編譯的程序,所有工作都很好。當我在Debug文件夾外運行該程序時,出現錯誤。 如果我修改我的代碼,這一切方式再次正常工作的每一個地方:
dbeCOwner.DataSource := DataForm.SQLDS;
try
dbeCOwner.DataField := 'COwner';
except
dbeCOwner.DataField := 'COwner';
end;
任何想法怎麼會呢?謝謝。
您的.Exe的位置不應該有任何區別。最可能的原因是你的代碼中沒有包含在q中的東西。請向你的q添加包含你引用的代碼的程序/函數的完整代碼。如果該單位不超過幾十行,則可能包含整個單位。另外,發生異常時,使用View |調試Windows |調用堆棧來查看它發生的位置。 – MartynA
「你的.Exe的位置不應該對此產生任何影響」是的,這就是我的想法。然而.exe文件的行爲有所不同,具體取決於它是否在Debug文件夾或其他任何地方,這很奇怪...... – Peter
好吧,將.Exe從Debug文件夾移動到其他位置,然後在調試器下從IDE運行它。這應該揭示你爲什麼會得到例外。 – MartynA