Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
unixstuff.h
Package: shell.rar [view]
Upload User: xhy777
Upload Date: 2007-02-14
Package Size: 24088k
Code Size: 4k
Category:
Windows Kernel
Development Platform:
Visual C++
- /* Unix specific function prototypes */
- #include <mainwin.h>
- #include "../shdocvw/unixstuff.h"
- #include "shbrows2.h"
- #include "shalias.h"
- #define MAIL_ACTION_SEND 1
- #define MAIL_ACTION_READ 2
- #define UNIX_TITLE_SUFFIX TEXT("")
- EXTERN_C MwPaintSpecialEOBorder( HWND hWnd, HDC hDC );
- BOOL CheckForInvalidOptions( LPCTSTR inCmdLine );
- void PrintIEHelp();
- void PrintIEVersion();
- // IE Thread Info stuff
- void UnixStuffInit();
- void StoreIEWindowInfo( HWND hwnd );
- HWND GetIEWindowOnThread();
- // Marshalling stuff
- #define CoMarshalInterface CoMarshalInterfaceDummy
- STDAPI CoMarshalInterfaceDummy( IStream *, REFIID, IUnknown *, DWORD, void *, DWORD );
- struct THREADWINDOWINFO
- {
- int cWindowCount;
- CShellBrowser2** rgpsb;
- };
- EXTERN_C THREADWINDOWINFO * InitializeThreadInfoStructs();
- EXTERN_C HRESULT TranslateModelessAccelerator(MSG* msg, HWND hwnd);
- EXTERN_C void FreeThreadInfoStructs();
- EXTERN_C void AddFirstBrowserToList( CShellBrowser2 *psb );
- EXTERN_C void RemoveBrowserFromList( CShellBrowser2 *psb );
- EXTERN_C void IEFrameNewWindowSameThread(IETHREADPARAM* piei);
- STDAPI_(BOOL) FileHasProperAssociation (LPCTSTR path);
- BOOL IsNamedWindow(HWND hwnd, LPCTSTR pszClass);
- LRESULT HandleCopyDataUnix(CShellBrowser2* psb, HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
- #define DM_THREADWINDOWINFO 0
- inline CShellBrowser2 * CheckAndForwardMessage(
- THREADWINDOWINFO * lpThreadWindowInfo ,
- CShellBrowser2 * psb,
- MSG msg
- )
- {
- // get psb for msg.hwnd. (Note psb inside scope may != psb outside)
- if (lpThreadWindowInfo->cWindowCount)
- {
- CShellBrowser2* psb, *psbActive = NULL;
- int i;
- BOOL fFoundSB = FALSE, fDelayClosed = FALSE;
- for (i = 0; i < lpThreadWindowInfo->cWindowCount; i++)
- {
- psb = lpThreadWindowInfo->rgpsb[i];
- // Save the active window here so that we don't have to
- // loop again.
- if(psb->_fActivated)
- {
- psbActive = psb;
- }
- if(psb->_fDelayedClose)
- {
- fDelayClosed = TRUE;
- }
- if (psb->_pbbd->_hwnd == msg.hwnd || IsChild(psb->_pbbd->_hwnd, msg.hwnd))
- {
- fFoundSB = TRUE;
- break;
- }
- }
- #ifdef DEBUG
- if (!fFoundSB)
- {
- TraceMsg(DM_THREADWINDOWINFO, "IE_TP ThreadWindowInfo didnt find psb for hwnd = %X, reusing hwnd = %X", msg.hwnd, psb->_pbbd->_hwnd);
- }
- #endif //DEBUG
- if( fDelayClosed || (i<lpThreadWindowInfo->cWindowCount) )
- {
- // Post WM_CLOSE messages for all the windows which are delayClosed.
- for (i = 0; i < lpThreadWindowInfo->cWindowCount; i++)
- {
- CShellBrowser2* psbDel = lpThreadWindowInfo->rgpsb[i];
- if( psbDel->_fDelayedClose )
- {
- psbDel->_fDelayedClose = FALSE;
- PostMessage( psbDel->_pbbd->_hwnd, WM_CLOSE, 0, 0 );
- }
- }
- }
- // Pass message to the current active window, because we fail to find the
- // appropriate parent. This happens in case of favorites window and msgs
- // get diverted to the last window on the array, which may be wrong.
- if( !fFoundSB && psbActive )
- {
- psb = psbActive;
- }
- return psb;
- }
- return NULL;
- }
- #undef KEYBOARDCUES