?
Hallo,
sollte jemand ebenso eine einfach Möglichkeit suchen EMailadressen aus dem WAB auslesen zu können möchte ich nachfolgend ein Beispiel geben:
#include <windows.h>
//----------------------------------------------------------------------------------------------------------------------
int GetRegString(char *SubKey, char *cValueName, char *cString, char *cDefault)
{
int iRet = 0;
HKEY hKey;
if(RegOpenKeyEx(HKEY_CURRENT_USER,SubKey,0,KEY_QUERY_VALUE,&hKey) == ERROR_SUCCESS){
DWORD dwType = REG_SZ;
DWORD dwByts = 256;
if(RegQueryValueEx(hKey,cValueName,NULL,&dwType,cString,&dwByts) == ERROR_SUCCESS){
if(!dwByts) *cString = 0;
iRet = dwByts;
}
else{
if(cDefault){
strcpy(cString,cDefault);
iRet = strlen(cString);
}
else{
*cString = 0;
iRet = 0;
}
}
RegCloseKey(hKey);
}
return(iRet);
}
//----------------------------------------------------------------------------------------------------------------------
HWND WABList_Create(HWND hWnd)
{
HWND bRetval = NULL;
char *cString = calloc(2,MAX_PATH);
if(GetRegString("Software\\Microsoft\\WAB\\WAB4\\Wab File Name","",cString,"")){
HANDLE hFile1 = CreateFile(cString,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile1){
HANDLE hFile2 = CreateFileMapping(hFile1,0,PAGE_READONLY,0,0,0);
if(hFile2){
char *cBuf = (char*)MapViewOfFile(hFile2,FILE_MAP_READ,0,0,0);
if(cBuf){
HWND hWABWnd = CreateWindow("LISTBOX",0,WS_CHILD | LBS_NOREDRAW | LBS_SORT,0,0,0,0,hWnd,NULL,GetModuleHandle(NULL),NULL);
if(hWndWAB){
int nos = (int)(*(cBuf + 0x64));
DWORD add = MAKELONG(MAKEWORD(*(cBuf + 0x60),*(cBuf + 0x61)),MAKEWORD(*(cBuf + 0x62),*(cBuf + 0x63)));
char *ca = cString + MAX_PATH;
int ii;
int j = 0;
int len;
for(len = 0;len < (nos * 68);len += 68){
for(ii = 0;ii <= 68;ii ++){
ca[ii] = *(cBuf + add + j + len);
j += 2;
}
ca[68] = 0;
j = 0;
SendMessage(hWABWnd,LB_ADDSTRING,0,(LPARAM)ca);
}
bRetval = hWABWnd;
}
UnmapViewOfFile(cBuf);
}
CloseHandle(hFile2);
}
CloseHandle(hFile1);
}
}
return(bRetval);
}
//----------------------------------------------------------------------------------------------------------------------
Gruß ube