2010-05-20 88 views
6

在Delphi中有沒有一種方法可以在dfm文件中搜索字符串?使用Delphi IDE搜索DFM文件

當我試圖在文件的搜索 - >查找指定.DFM這是行不通的。但是,如果我將dfm的所有分機更改爲txt並將其指定爲.txt作爲其工作的擴展。

回答

16

我使用的GExperts grep,它工作得很好DFM當您檢查「搜索表單文件」

alt text http://www.gexperts.org/tour/grep%20search.png

更新:爲什麼我喜歡GExperts到D2010「在文件中查找」 ...

  • D2007工作,以及D2010。我可以使用相同的搜索工具一致在兩個。
  • 您可以限制搜索開/全在項目/所有的項目組,仍然得到DFM,而D2010你只能用於目錄的DFM和它不甚至在D2007工作。
  • 如果需要我可以同時使用
+0

GExperts可以在這裏下載:http://www.gexperts.org – 2010-05-20 16:33:52

+1

德爾福2010年的 「查找文件」 可以做到這一點。 – Giel 2010-05-20 17:17:58

+0

@Giel,但只能在目錄中搜索。(看我的編輯) – 2010-05-20 20:24:51

3

有任何簡單的方法來處理DFM文件。

  • 打開表格,以便在視覺上看到它 。
  • 右鍵單擊並選擇 '以文本形式查看'。
  • 將結果文本文件視爲源代碼,使用 字符串等,然後當您完成後,右鍵單擊並選擇'查看爲 窗體'。

    試試吧。

+0

您也可以使用ALT-F12在窗體設計器(而不是代碼視圖)和窗體之間切換爲文本。 – 2010-05-20 17:22:59

+0

是的 - 我意識到這一點。但我真正需要做的是在一個目錄或一組目錄中搜索所有的DFM。 – 2010-05-20 20:44:01

+0

這在Delphi IDE的最新版本中不起作用,表單查看器會覆蓋您對DFM文件所做的任何更改。然而,你可以做的是使用外部編輯器,比如Visual Studio Code,在那裏編輯DFM文件,然後你只需要重新打開項目來加載更改(即使對於大型項目,這個速度也非常快)你有撤消能力,可以使用你最喜歡的編輯器! – 2017-12-08 11:02:24

2

好的......不知道您是否想要從Delphi的IDE或Windows中進行搜索。就像François所說,從Delphi的IDE中,GExpert的GREP搜索完成了這項工作。要允許Windows讀取DFM/PAS文件,您需要添加一些註冊表項以允許它在Windows XP和更高版本上使用。將以下內容保存在* .reg文件中,然後雙擊它以在註冊表中安裝。 (注意,這在WinXP中有效,我沒有在Win7/Vista中試過)

其中一些鍵可能不需要...我只是從[HKEY_CLASSES_ROOT\.txt]鍵中複製了一些東西。^_^

Windows Registry Editor Version 5.00 

[HKEY_CLASSES_ROOT\.dfm] 
"PerceivedType"="text" 
"Content Type"="text/plain" 

[HKEY_CLASSES_ROOT\.dfm\PersistentHandler] 
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}" 

[HKEY_CLASSES_ROOT\.pas] 
"PerceivedType"="text" 
"Content Type"="text/plain" 

[HKEY_CLASSES_ROOT\.pas\PersistentHandler] 
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}" 
+0

感謝您的詳細回覆。是的 - 我打算說「在Delphi IDE中」。 – 2010-05-20 20:44:51