if((lstrcmpi(sgProduct.szProductNameInternal, "GRE") != 0) && gGreInstallerHasRun)
if(!IsInstallerProductGRE() && gGreInstallerHasRun)
BOOL GreInstallerNeedsReboot(){  BOOL greReboot = FALSE;  /* if this setup is not installing GRE *and* the GRE Setup has been run, then   * check for GRE setup's exit value, if one exists */  if((lstrcmpi(sgProduct.szProductNameInternal, "GRE") != 0) && gGreInstallerHasRun)  {    char status[MAX_BUF];    GetGreSetupExitStatus(status, sizeof(status));    /* if a reboot is detected from the GRE setup run, then     * simply return TRUE for reboot is needed. */    if(lstrcmpi(status, "Reboot") == 0)      greReboot = TRUE;  }  return(greReboot);}