特定のホットキーを押すと、特定のファイル (ホットキーのコンテキストに基づいて異なる) が開き、そのファイルで特定の文字列 (これもコンテキストに依存します) を検索する Visual Studio 2008 アドインがあります。これは問題なく機能しますが、開いているファイルが大きすぎると、検索が失敗することがあります。
コード スニペットを次に示します。
Window xmlWindow = Commands.Application.ItemOperations.OpenFile(objectFilename, EnvDTE.Constants.vsViewKindPrimary);
Find find = xmlWindow.Document.DTE.Find;
find.Action = vsFindAction.vsFindActionFind;
find.FindWhat = String.Format("Name=\"{0}\"", objectLocalName);
if (find.Execute() == vsFindResult.vsFindResultFound) {
MessageBox.Show("Found!");
}
1. 常に機能するようにする方法はありますか (たとえば、OpenFile をブロックするなど)?
2. あまり重要ではありませんが、結果が [検索結果] ペインに表示されることなく、このように検索する方法はありますか (これにより、カーソルを下に移動するためだけに使用されるこの検索によって古い結果が消去されます)。ファイルのその部分)?