簡體   English   中英

對Delphi XE的任何想法都可以隨意加載設計包嗎?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM