|
|
|
re: Question about 'How do I turn off Windows XP's built-in support for ZIP files?'
Friday, September 3, 2004 at 2:15 pm Windows XP Annoyances Discussion Forum
Posted by Falcon
(13489 messages posted)
Here 'ya go: This must be run before you use the Zip Folder wizard, which probably
means at system startup via your Start Menu's Startup folder.
Command line: rundll32.exe ZipFldrHook.dll,Run
Working directory: The folder containing ZipFldrHook.dll
Base-64 encoded ZIP file containing ZipFldrHook.dll:
UEsDBBQAAAAIAEOKIzHq8S6lPAMAAOAFAAAPAAAAWmlwRmxkckhvb2suZGxslVRbaBNREJ1NGmm1
j3yYP9EtVPBDY8m1KKjQVlMrtnVN1IiP6pq9mG03u2Gz0aiI8RFRQoKIiIigID6+RFSwiNjohygo
VFARURR/FR8/fonXubnZWCpWHXJy7p05d3Z2dnb7Nx4HLwDUIRgDGAFhnfB3KyOaZ91uhpsNT1pH
pL4nrWsTelpO2dYOW03KcdU0LUfeTmU7Y8q6KS9fHZWTlkaDTU1T26o55j8afTN85WnpF8ZKKnLD
rfslEzlZeFUaQj559HmFI3o8wXVuDUoYoE/yQfHtoi7X9w6aW6dJU6BdAmj3CF/OI3DNW9n6/fwP
xH3DOH7nEzpugvxCWOMqoa6H6zHfEvizHUfdgknifzJeZ/sk8aBDsw7yPEnU2y79qts1GWBb0NZU
RwU4JYmc56VaD2rWib+gkEErQvGJa3OeoCtHe7si2HJoQOR8ohe533VjQZsaVhygF0QPlCpP0HUf
WnrYh0kyDYXlbXUX+HpI2nC/EdYVPh74CFjsoX31EC1s8cda8mV+raVHub4lfwM3B/Y2fkVqyV/i
kYs4wAxG+aFinq9jyhCwwIgX/GKvsMBNvjnsYz8Yyy3a7DQVizyw+N5Ob++HT50JDXOjChvkz5cz
0fWFjme4ZGk/e6GwF0IcW4OKsVrShCLOlCtnBjMzFSXBi3rg44VK/GzgMcZysyuFR1mmkWXqWQc2
DSMPMbJ10yO8YSy1g99+4rQHe9DIAi8xdIGrhhgL3MHNh2+YdgMOqoZIIY4g+qqDexb5KuIuYgzx
uuqf4Q42WqlOPPsF43xfcP1wwjy49r/X+u4x0o4dT6bwTWTuWu+Cei9fG9REf5u0gjr9lpYxaI9u
0AE1SdF7yhM1KE3BqnBkINxHQkHNMAACsEw1jAEc9F7LGg5nAaZ7otTU+mk6re7g5wZ5tphuatau
tShDTwf3KKpNTQe2o7oaTYsMXbAuGo64+V1zvx0hnE8cnhrm4H4ufxcQx7BH3ZX53ainegzN5gkr
aSIZc1zPwlnHVuOObplyTN+j2hr6aDZlWDa1gzRL4R+Mfy8Ohkqh66H3oc+hZhIgMllIuslKsolQ
Mkx2k/2kSE6QM+QcuUwmz/YTUEsBAhQLFAAAAAgAQ4ojMerxLqU8AwAA4AUAAA8AAAAAAAAAAAAg
AAAAAAAAAFppcEZsZHJIb29rLmRsbFBLBQYAAAAAAQABAD0AAABpAwAAAAA=
Source code:
#include <windows.h>
#ifdef _DEBUG
// Stupid MSVC++ function in the CRT,
// which I'm not using
extern "C" __declspec(naked) void _chkesp()
{
__asm je return0
__asm nop
return0:
__asm ret
}
#endif
#pragma data_seg("SHARE")
HHOOK g_hHook=NULL;
HINSTANCE g_hInstance=NULL;
bool g_bProcessing=false;
#pragma data_seg()
#pragma comment(linker,"/SECTION:SHARE,RWS")
BOOL APIENTRY CRTDllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
if(g_hInstance==NULL)
{
g_hInstance=(HINSTANCE)hModule;
}
return TRUE;
}
#define CONTROL_ID 0x0000044A
#define PROCESS_NAME "explorer.exe"
#define DIALOG_TITLE "Extraction Wizard"
#define BUFFER_SIZE 256
LRESULT CALLBACK CWPRHook(int nCode,WPARAM wParam,LPARAM lParam)
{
char cBuffer[BUFFER_SIZE];
char* sFilename;
int nLength;
HWND hwParent;
if(HC_ACTION==nCode&&!g_bProcessing)
{
CWPRETSTRUCT* cwrps=(CWPRETSTRUCT*)lParam;
if(cwrps->message==BM_SETCHECK)
{
cBuffer[0]=0;
GetModuleFileName(NULL,cBuffer,BUFFER_SIZE);
nLength=lstrlen(cBuffer);
sFilename=&cBuffer[nLength-1];
while(*sFilename!='\\'&&sFilename>cBuffer)
sFilename--;
sFilename++;
if(lstrcmpi(sFilename,PROCESS_NAME)==0)
{
hwParent=GetParent(cwrps->hwnd);
hwParent=GetParent(hwParent);
GetWindowText(hwParent,cBuffer,BUFFER_SIZE);
if(lstrcmp(cBuffer,DIALOG_TITLE)==0)
{
g_bProcessing=true;
SendMessage(cwrps->hwnd,BM_SETCHECK,BST_UNCHECKED,0);
g_bProcessing=false;
}
}
}
}
return CallNextHookEx(g_hHook,nCode,wParam,lParam);
}
void CALLBACK Run(HWND hwnd,HINSTANCE hinst,LPSTR lpszCmdLine,int nCmdShow)
{
g_hHook=SetWindowsHookEx(WH_CALLWNDPROCRET,CWPRHook,g_hInstance,0);
while(true)
Sleep(0xFFFFFFFF);
}

|
All messages in this thread [show all]
 |  |  |  | re: Question about 'How do I turn off Windows XP's built-in support for ZIP files?' (Falcon: Fri, Sep 3, 2004, 2:15 pm) |
| |
| |
Return to the Windows XP Discussion Forum
|
|
|
|