win32.cpp File Reference

#include "win32.h"
#include <QDir>
#include <QLibrary>
#include <QtDebug>
#include <tlhelp32.h>
#include <shlobj.h>

Go to the source code of this file.

Typedefs

typedef HANDLE(WINAPI * CreateToolhelp32Snapshot_fn )(DWORD, DWORD)
typedef BOOL(WINAPI * Process32First_fn )(HANDLE, LPPROCESSENTRY32)
typedef BOOL(WINAPI * Process32Next_fn )(HANDLE, LPPROCESSENTRY32)

Functions

QString win32_get_folder_location (int folder, QString defaultPath)
QString win32_program_files_folder ()
QString win32_app_data_folder ()
QString win32_registry_get_key_value (QString keyLocation, QString keyName)
void win32_registry_set_key_value (QString keyLocation, QString keyName, QString keyValue)
void win32_registry_remove_key (QString keyLocation, QString keyName)
BOOL CALLBACK quitWindowCallback (HWND hwnd, LPARAM targetPID)
void win32_end_process_by_pid (DWORD pid)
void win32_end_process_by_filename (QString filename)
QHash< qint64, QString > win32_process_list ()


Typedef Documentation

typedef HANDLE(WINAPI * CreateToolhelp32Snapshot_fn)(DWORD, DWORD)

Definition at line 37 of file win32.cpp.

typedef BOOL(WINAPI * Process32First_fn)(HANDLE, LPPROCESSENTRY32)

Definition at line 38 of file win32.cpp.

typedef BOOL(WINAPI * Process32Next_fn)(HANDLE, LPPROCESSENTRY32)

Definition at line 39 of file win32.cpp.


Function Documentation

BOOL CALLBACK quitWindowCallback ( HWND  hwnd,
LPARAM  targetPID 
)

Callback for EnumThreadWindows which sends the WM_QUIT message

Definition at line 168 of file win32.cpp.

Referenced by win32_end_process_by_pid().

QString win32_app_data_folder (  ) 

Gets the location of the user's APPDATA% folder.

Definition at line 87 of file win32.cpp.

References win32_get_folder_location().

Referenced by Vidalia::defaultDataDirectory(), and expand_filename().

void win32_end_process_by_filename ( QString  filename  ) 

Close all processes started from the specified filename. Sends WM_QUIT to all top-level windows. Filename should be given in lowercase, and comparison is case insensitive. Note: the MSDN documentation for WM_QUIT states that the message should not be sent by PostMessage(). However, sending WM_CLOSE leaves Firefox running, whereas WM_QUIT seems to work.

Definition at line 204 of file win32.cpp.

References i(), win32_end_process_by_pid(), and win32_process_list().

Referenced by MainWindow::aboutToQuit().

void win32_end_process_by_pid ( DWORD  pid  ) 

Close process with the specified PID. Sends WM_QUIT to all top-level windows.

Definition at line 185 of file win32.cpp.

References quitWindowCallback().

Referenced by win32_end_process_by_filename().

QString win32_get_folder_location ( int  folder,
QString  defaultPath 
)

Finds the location of the "special" Windows folder using the given CSIDL value. If the folder cannot be found, the given default path is used.

Definition at line 45 of file win32.cpp.

Referenced by win32_app_data_folder(), and win32_program_files_folder().

QHash<qint64, QString> win32_process_list (  ) 

Returns a list of all currently active processes, including their pid and exe filename.

Definition at line 229 of file win32.cpp.

Referenced by is_process_running(), MainWindow::onCheckForBrowser(), process_list(), and win32_end_process_by_filename().

QString win32_program_files_folder (  ) 

Gets the location of the user's PROGRAMFILES% folder.

Definition at line 79 of file win32.cpp.

References win32_get_folder_location().

Referenced by expand_filename(), and TorSettings::TorSettings().

QString win32_registry_get_key_value ( QString  keyLocation,
QString  keyName 
)

Returns the value in keyName at keyLocation. Returns an empty QString if the keyName doesn't exist

Definition at line 96 of file win32.cpp.

Referenced by VidaliaSettings::runVidaliaOnBoot().

void win32_registry_remove_key ( QString  keyLocation,
QString  keyName 
)

Removes the key from the registry if it exists

Definition at line 147 of file win32.cpp.

Referenced by VidaliaSettings::setRunVidaliaOnBoot().

void win32_registry_set_key_value ( QString  keyLocation,
QString  keyName,
QString  keyValue 
)

Creates and/or sets the key to the specified value

Definition at line 120 of file win32.cpp.

Referenced by VidaliaSettings::setRunVidaliaOnBoot().


Generated on Mon Aug 30 19:14:03 2010 for Vidalia by  doxygen 1.5.9