Cookie Viewer/Killer

Environment:VC6 SP5, VC7.NET, WinXP Pro

This dialog-based application first tries to find the path to the user's Cookies folder' if this is successful, an entry is made in the Registry. The path can later be changed by opening the AboutBox and entering the new path. The cookies can be opened by clicking the cookie; also, a search box is provided to find a cookie with text entered in the find cookie box. A keyboard handler has been added so the user can either click the find cookie button or press the enter key. Any other key is passed on to the system. When the Enter key is pressed, it has to be removed from the queue; this is done be replacing it with the Home key. I have included a fair error handler. There is also a Delete current cookie button which prompts the user to confirm deletion. The cookie is then removed from the cookie list and the user's cookie folder.

BOOL CCookieViewerDlg::PreTranslateMessage(MSG* pMsg)
{
  // TODO: Add your specialized code here and/or call the
  // base class
  if (pMsg->message == WM_KEYDOWN)
  {
    if (pMsg->wParam == VK_RETURN)
    {
      pMsg->wParam = VK_HOME;
      OnFindcookie();
    }
  }
  
  return CDialog::PreTranslateMessage(pMsg);
}

void CCookieViewerDlg::GetError(LPSTR lpszFunction)
{
  LPVOID lpMsgBuf;
  FormatMessage(
    FORMAT_MESSAGE_ALLOCATE_BUFFER |
    FORMAT_MESSAGE_FROM_SYSTEM |
    FORMAT_MESSAGE_IGNORE_INSERTS,
    NULL,
    GetLastError(),
    MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
    (LPTSTR) &lpMsgBuf,
    0,
    NULL );
  // Process any inserts in lpszFunction
  // ...
  if (lpszFunction == "")
    lpszFunction = "Error";
  // Display the string.
  ::MessageBox( NULL, (LPCTSTR)lpMsgBuf, lpszFunction,
                MB_OK | MB_ICONINFORMATION );
  // Free the buffer.
  LocalFree( lpMsgBuf );

}

Downloads

Download demo project - 101 Kb
Download source - 22 Kb