[英]Any ideas for Delphi XE can randomly not load design package?
我已經創建了一個包含組件注冊的設計包(組件本身在運行時)和一些IDE菜單項。
如果我從項目經理單擊上下文菜單中的“安裝”菜單項 - 包將被加載並正常工作(始終)。
如果我關閉IDE並重新啟動它 - 可能已加載包或可能未加載包。 隨機看似。 但它通常不會加載,而不是加載。
如果我去組件/安裝包 - 我在列表中看到我的包,復選框被選中,“組件”按鈕顯示我的包中的組件,但包的可執行文件本身甚至沒有在IDE中加載! (我已通過Process Explorer驗證了這一點)。 重新安裝(刪除包 - >確定 - >組件/安裝包 - >添加 - >確定)沒有幫助。 但是從項目管理器中的項目的上下文菜單中卸載/安裝 - 總是有幫助的。
我已經將OutputDebugString添加到包中每個模塊的初始化部分。 我發現初始化部分不會運行。
運行時包與設計時包在同一文件夾中。 文件夾位於PATH環境變量中。 我還嘗試將包放在Delphi的Bin文件夾中。 沒有錯誤消息。 沒有奇怪/診斷的OutputDebugStrings。
有任何想法嗎?
PS我在兩台不同的機器上有這種行為。 一個是Win7,另一個是WinXP SP 2。
PPS我無法在Delphi 7上重現這種行為。相同的包,重新編譯D7總是加載。
我發現新的Delphi具有延遲打包加載的功能。 這應該優化啟動速度,當沒有加載包時,不需要它們時。
這適用於組件包,但破壞了(例如)修改IDE菜單的包的樂趣。
您可以通過從Register過程調用ForceDemandLoadState(dlDisable)來告訴IDE始終加載您的包。
PS為什么你在發帖后幾乎立即找到答案? :d
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.