Какая-либо пчела окон для получения дескрипторов файлов помимо createfile и openfile?

Многие сайты используют AJAX для динамического добавления / отображения / изменения контента. Иногда он используется вместо навигации по сайту, поэтому текущий URL-адрес изменяется программно, а сценарии содержимого в этом случае автоматически не выполняются браузером, так как страница не извлекается с удаленного сервера целиком.


Обычные JS-методы обнаружения изменений страницы, доступные в сценарии контента .


Специфические расширения: обнаружение изменений URL на странице background / .

Для работы с навигацией существует расширенный API: webNavigation , webRequest , но мы будем использовать простой chrome.tabs.onUpdated прослушиватель событий, который посылает сообщение к скрипту содержимого:

  • manifest.json: declare background / event page объявить скрипт содержимого добавить "tabs" разрешено .
  • background.js
    var rxLookfor = /^https?:\/\/(www\.)?google\.(com|\w\w(\.\w\w)?)\/.*?[?#&]q=/;
    chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
        if (rxLookfor.test(changeInfo.url)) {
            chrome.tabs.sendMessage(tabId, 'url-update');
        }
    });
    
  • content.js
    chrome.runtime.onMessage.addListener(function(msg, sender, sendResponse) {
        if (msg === 'url-update') {
            doSomething();
        }
    });
    

5
задан Coding Mash 1 September 2012 в 22:47
поделиться

3 ответа

Можно использовать FileMon Sysinternal. Это - превосходный монитор, который может сказать Вам точно, которыми делаются связанные с файлом системные вызовы и каковы параметры.

Я думаю, что этот подход намного легче, чем сцепление вызовов API и намного менее навязчив.

8
ответ дан 18 December 2019 в 09:55
поделиться

Вот ссылка, которая могла бы быть полезной:

Файл партизанского стиля, контролирующий с C# и C++

Возможно создать файл без касающегося CreateFile API, но я могу спросить, какой метод Внедрения DLL Вы используете? При использовании чего-то как Windows Hooks DLL не будет установлен, до когда-то после того, как целевое приложение инициализирует, и Вы пропустите ранние звонки к CreateFile. Принимая во внимание, что при использовании чего-то как DetourCreateProcessWithDll, рычаг CreateFile может быть установлен до любого выполнения кода запуска приложения.

По моему опыту, 99,9% создал/открыл результат файлов в вызове к CreateFile, включая файлы, открытые через C, и C++ освобождает, третье лицо освобождает и т.д. Возможно, существуют некоторые недокументированные функции DDK, которые не направляют через CreateFile, но для типичного файла журнала, я сомневаюсь относительно этого.

6
ответ дан 18 December 2019 в 09:55
поделиться

Монитор процесса от sysinternals мог помочь также.

3
ответ дан 18 December 2019 в 09:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: