winmain.h
资源名称:unzip540.zip [点击查看]
上传用户:andy_li
上传日期:2007-01-06
资源大小:1019k
文件大小:5k
源码类别:
压缩解压
开发平台:
MultiPlatform
- //******************************************************************************
- //
- // File: WINMAIN.H
- //
- // Description: This module contains all the Windows specific decalrations for
- // Pocket UnZip. See WINMAIN.CPP for a more detailed description
- // and the actual implementation.
- //
- // Copyright: All the source files for Pocket UnZip, except for components
- // written by the Info-ZIP group, are copyrighted 1997 by Steve P.
- // Miller. The product "Pocket UnZip" itself is property of the
- // author and cannot be altered in any way without written consent
- // from Steve P. Miller.
- //
- // Disclaimer: All project files are provided "as is" with no guarantee of
- // their correctness. The authors are not liable for any outcome
- // that is the result of using this source. The source for Pocket
- // UnZip has been placed in the public domain to help provide an
- // understanding of its implementation. You are hereby granted
- // full permission to use this source in any way you wish, except
- // to alter Pocket UnZip itself. For comments, suggestions, and
- // bug reports, please write to stevemil@pobox.com.
- //
- //
- // Date Name History
- // -------- ------------ -----------------------------------------------------
- // 02/01/97 Steve Miller Created (Version 1.0 using Info-ZIP UnZip 5.30)
- //
- //******************************************************************************
- #ifndef __WINMAIN_H__
- #define __WINMAIN_H__
- #ifdef __cplusplus
- extern "C" {
- #endif
- //******************************************************************************
- //***** Constants / Macros
- //******************************************************************************
- #define MRU_MAX_FILE 4 // Should not exceed 9
- #define MRU_START_ID 501
- #define WM_PRIVATE 0x9999
- #define MSG_SUBCLASS_DIALOG 1
- #define MSG_INIT_DIALOG 2
- #define MSG_ADD_TEXT_TO_EDIT 3
- #define MSG_PROMPT_TO_REPLACE 4
- #define MSG_PROMPT_FOR_PASSWORD 5
- #define MSG_UPDATE_PROGRESS_PARTIAL 6
- #define MSG_UPDATE_PROGRESS_COMPLETE 7
- #define MSG_OPERATION_COMPLETE 8
- #define IDC_SAVE_FILE_LIST 12
- #define IDC_SAVE_NAME_PROMPT 1023
- #define IDC_SAVE_NAME_EDIT 1021
- #define IDC_SAVE_TYPE_PROMPT 1022
- #define IDC_SAVE_TYPE_LIST 1020
- #define PROGRESS_MAX 32768
- #define FILE_ATTRIBUTE_VOLUME 0x00000008
- #define FILE_ATTRIBUTE_ENCRYPTED 0x10000000
- #define FILE_ATTRIBUTE_COMMENT 0x20000000
- #define IMAGE_VOLUME 0
- #define IMAGE_FOLDER 1
- #define IMAGE_APPLICATION 2
- #define IMAGE_GENERIC 3
- #ifndef LVS_EX_FULLROWSELECT
- #define LVS_EX_FULLROWSELECT 0x00000020
- #endif
- // LVM_SETEXTENDEDLISTVIEWSTYLE came after VC 4.0
- #ifndef LVM_SETEXTENDEDLISTVIEWSTYLE
- #define LVM_SETEXTENDEDLISTVIEWSTYLE (LVM_FIRST + 54)
- #endif
- // LVM_GETEXTENDEDLISTVIEWSTYLE came after VC 4.0
- #ifndef LVM_GETEXTENDEDLISTVIEWSTYLE
- #define LVM_GETEXTENDEDLISTVIEWSTYLE (LVM_FIRST + 55)
- #endif
- #ifdef _WIN32_WCE
- #define CheckDlgButton(hDlg, ctrl, fChecked)
- SendDlgItemMessage(hDlg, ctrl, BM_SETCHECK, fChecked, 0)
- #define IsDlgButtonChecked(hDlg, ctrl)
- SendDlgItemMessage(hDlg, ctrl, BM_GETCHECK, 0, 0)
- #endif
- //******************************************************************************
- //***** Types and Structures
- //******************************************************************************
- typedef struct _FILE_TYPE_NODE {
- struct _FILE_TYPE_NODE *pNext;
- int image;
- CHAR szExtAndDesc[2];
- } FILE_TYPE_NODE, *LPFILE_TYPE_NODE;
- typedef struct _FILE_NODE {
- DWORD dwSize;
- DWORD dwCompressedSize;
- DWORD dwModified;
- DWORD dwAttributes;
- DWORD dwCRC;
- LPCSTR szComment;
- LPCSTR szType;
- CHAR szPathAndMethod[2];
- } FILE_NODE, *LPFILE_NODE;
- typedef struct _COLUMN {
- LPTSTR szName;
- int format;
- } COLUMN, *LPCOLUMN;
- //******************************************************************************
- //***** Exported Function Prototypes
- //******************************************************************************
- void AddFileToListView(FILE_NODE *pFile);
- LPCSTR GetFileFromPath(LPCSTR szPath);
- void ForwardSlashesToBackSlashesA(LPSTR szBuffer);
- //******************************************************************************
- //***** Global Variables
- //******************************************************************************
- #ifdef GLOBAL_DECLARE
- #undef GLOBAL_DECLARE
- #undef GLOBAL_INIT
- #endif
- #ifdef __WINMAIN_CPP__
- #define GLOBAL_DECLARE
- #define GLOBAL_INIT(value) =value
- #else
- #define GLOBAL_DECLARE extern
- #define GLOBAL_INIT(value)
- #endif
- GLOBAL_DECLARE HINSTANCE g_hInst GLOBAL_INIT(NULL);
- GLOBAL_DECLARE HWND g_hWndMain GLOBAL_INIT(NULL);
- GLOBAL_DECLARE HWND g_hWndEdit GLOBAL_INIT(NULL);
- GLOBAL_DECLARE HWND g_hDlgProgress GLOBAL_INIT(NULL);
- GLOBAL_DECLARE CHAR g_szZipFile[_MAX_PATH] GLOBAL_INIT("");
- #ifdef __cplusplus
- } // extern "C"
- #endif
- #endif // __WINMAIN_H__