#include<stdio.h>#include<string.h>void main()
{
char Buf[256];
char installstr[30],flestr[30];
HKEY hKey;
RegOpenKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Adobe Acrobat",&hKey);
char sCommand[256];
char *pCDROM = GetCDRom(Buf);
::strcpy(installstr,pCDROM);
::strcat(installstr,"\\ar500chs.exe");
::strcpy(flestr,pCDROM);
::strcat(flestr,"\\main.pdf");
DWORD l =_MAX_PATH;
DWORD dwType = REG_SZ;
if(ERROR_SUCCESS!=RegQueryValueEx(hKey,"UninstallString",0,&dwType,(LPBYTE)sCommand,&l))
{
if (pCDROM == NULL)
MessageBox("Not Found CDROM");
else
{
// MessageBox("uninstall acrobat5.0");
::ShellExecute(NULL,"open",installstr,NULL,NULL,SW_SHOWNORMAL);
::ShellExecute(0,"open","AcroRd32.exe",flestr,0,SW_SHOWNORMAL);
}
}
else
{
if (pCDROM == NULL)
// MessageBox("Not Found CDROM");
else
{
// MessageBox("install acrobat5.0");
::ShellExecute(0,"open","AcroRd32.exe",flestr,0,SW_SHOW); } }
}char * GetCDRom(char *Buf)
{
char *pCDr = NULL;
DWORD nBufferLength = 256;
LPTSTR lpBuffer = Buf;
DWORD dw = GetLogicalDriveStrings(nBufferLength,lpBuffer);
char * p = Buf;
while(*p)
{
UINT uDriveType = GetDriveType(p);
if(uDriveType == DRIVE_CDROM)
{
pCDr = p;
break;
}
p+=strlen(p)+1;
} return(pCDr);}
{
char Buf[256];
char installstr[30],flestr[30];
HKEY hKey;
RegOpenKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Adobe Acrobat",&hKey);
char sCommand[256];
char *pCDROM = GetCDRom(Buf);
::strcpy(installstr,pCDROM);
::strcat(installstr,"\\ar500chs.exe");
::strcpy(flestr,pCDROM);
::strcat(flestr,"\\main.pdf");
DWORD l =_MAX_PATH;
DWORD dwType = REG_SZ;
if(ERROR_SUCCESS!=RegQueryValueEx(hKey,"UninstallString",0,&dwType,(LPBYTE)sCommand,&l))
{
if (pCDROM == NULL)
MessageBox("Not Found CDROM");
else
{
// MessageBox("uninstall acrobat5.0");
::ShellExecute(NULL,"open",installstr,NULL,NULL,SW_SHOWNORMAL);
::ShellExecute(0,"open","AcroRd32.exe",flestr,0,SW_SHOWNORMAL);
}
}
else
{
if (pCDROM == NULL)
// MessageBox("Not Found CDROM");
else
{
// MessageBox("install acrobat5.0");
::ShellExecute(0,"open","AcroRd32.exe",flestr,0,SW_SHOW); } }
}char * GetCDRom(char *Buf)
{
char *pCDr = NULL;
DWORD nBufferLength = 256;
LPTSTR lpBuffer = Buf;
DWORD dw = GetLogicalDriveStrings(nBufferLength,lpBuffer);
char * p = Buf;
while(*p)
{
UINT uDriveType = GetDriveType(p);
if(uDriveType == DRIVE_CDROM)
{
pCDr = p;
break;
}
p+=strlen(p)+1;
} return(pCDr);}
c:\program files\microsoft visual studio\vc98\include\winreg.h(36) : error C2146: syntax error : missing ';' before identifier 'REGSAM'
c:\program files\microsoft visual studio\vc98\include\winreg.h(36) : fatal error C1004: unexpected end of file found