Module: Vapir::IE::ClearTracks

Defined in:
lib/vapir-ie/clear_tracks.rb

Constant Summary collapse

History =
1 << 0
Cookies =
1 << 1
TemporaryFiles =

?? = 1 << 2

1 << 3
FormData =
1 << 4
StoredPasswords =
1 << 5
All =

?? = 1 << 6 ?? = 1 << 7

(1 << 8)-1
FilesAndSettingsStoredByAddOns =

don’t know what happened to any of bits 6 through 11. also this only seems to be documented anywhere as 4351 = 1000011111111 (= All | FilesAndSettingsStoredByAddOns)

1 << 12

Class Method Summary collapse

Class Method Details

.clear_tracks(what) ⇒ Object

Clears tracks according to the given argument, which should be one of the constants of this module, or any number of those constants bitwise-OR’d together.

ClearTracks.clear_tracks(ClearTracks::FormData)
ClearTracks.clear_tracks(ClearTracks::History | ClearTracks::StoredPasswords)


23
24
25
26
27
28
29
30
31
32
33
# File 'lib/vapir-ie/clear_tracks.rb', line 23

def self.clear_tracks(what)
  unless const_defined?('InetCpl')
    require 'ffi'
    define_const('InetCpl', Module.new)
    InetCpl.extend(FFI::Library)
    InetCpl.ffi_lib 'InetCpl.cpl'
    InetCpl.ffi_convention :stdcall
    InetCpl.attach_function :ClearMyTracksByProcess, :ClearMyTracksByProcessW, [:int], :void
  end
  InetCpl.ClearMyTracksByProcess(what)
end