Ignore:
Timestamp:
Dec 28, 1999, 8:16:35 PM (26 years ago)
Author:
sandervl
Message:

registry tree added + getsystempowerstatus implemented

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/initsystem.cpp

    r2044 r2229  
    1 /* $Id: initsystem.cpp,v 1.1 1999-12-09 11:59:28 sandervl Exp $ */
     1/* $Id: initsystem.cpp,v 1.2 1999-12-28 19:16:34 sandervl Exp $ */
    22/*
    33 * Odin system initialization (registry & directories)
     
    1919#include "initsystem.h"
    2020#include "directory.h"
     21#include <versionos2.h>
    2122
    2223static HINSTANCE hInstance = 0;
     
    5657 char *buf;
    5758 DWORD val;
     59 char  digbuf[16];
    5860
    5961   if(ADVAPI32_RegCreateKeyA(HKEY_LOCAL_MACHINE,"SYSTEM\\CurrentControlSet\\Control\\Windows",&hkey)!=ERROR_SUCCESS) {
     
    6971   val = 0;
    7072   ADVAPI32_RegSetValueExA(hkey,"NoInteractiveServices",0,REG_DWORD, (LPBYTE)&val, sizeof(DWORD));
    71    val = 0x300;
     73   val = ODINNT_BUILD_NR;
    7274   ADVAPI32_RegSetValueExA(hkey,"CSDVersion",0,REG_DWORD, (LPBYTE)&val, sizeof(DWORD));
    7375   ADVAPI32_RegSetValueExA(hkey,"ShutdownTime",0,REG_DWORD, (LPBYTE)ShutdownTime, sizeof(ShutdownTime));
    7476   ADVAPI32_RegCloseKey(hkey);
    75  
     77
     78   if(ADVAPI32_RegCreateKeyA(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion",&hkey)!=ERROR_SUCCESS) {
     79        dprintf(("InitRegistry: Unable to register system information (2)"));
     80        return FALSE;
     81   }
     82   buf = InternalGetSystemDirectoryA();
     83   ADVAPI32_RegSetValueExA(hkey,"SystemRoot",0,REG_SZ, (LPBYTE)buf, strlen(buf)+1);
     84   ADVAPI32_RegSetValueExA(hkey,"PathName",0,REG_SZ, (LPBYTE)buf, strlen(buf)+1);
     85   sprintf(digbuf, "%d", ODINNT_BUILD_NR);
     86   ADVAPI32_RegSetValueExA(hkey,"CurrentBuildNumber",0,REG_SZ, (LPBYTE)digbuf, strlen(digbuf)+1);
     87   ADVAPI32_RegSetValueExA(hkey,"CurrentType",0,REG_SZ, (LPBYTE)ODINNT_OSTYPE_UNI, sizeof(ODINNT_OSTYPE_UNI));
     88   ADVAPI32_RegSetValueExA(hkey,"CSDVersion",0,REG_SZ, (LPBYTE)ODINNT_CSDVERSION, sizeof(ODINNT_CSDVERSION));
     89   ADVAPI32_RegSetValueExA(hkey,"SoftwareType",0,REG_SZ, (LPBYTE)ODINNT_SOFTWARE_TYPE, sizeof(ODINNT_SOFTWARE_TYPE));
     90
     91   sprintf(digbuf, "%d.%d", ODINNT_MAJOR_VERSION, ODINNT_MINOR_VERSION);
     92   ADVAPI32_RegSetValueExA(hkey,"CurrentVersion",0,REG_SZ, (LPBYTE)digbuf, strlen(digbuf)+1);
     93
     94   val = GetCurrentTime(); //TODO: Correct format?
     95   ADVAPI32_RegSetValueExA(hkey,"InstallDate",0,REG_DWORD, (LPBYTE)&val, sizeof(DWORD));
     96   
     97   ADVAPI32_RegCloseKey(hkey);
     98   //todo: productid, registered org/owner, sourcepath,   
    7699   return TRUE;
    77100}
Note: See TracChangeset for help on using the changeset viewer.