//Write Reg Value
#include <CONIO.H>
#include <iostream.h>
#include <windows.h>
bool GetRegKey(HKEY, char hSubKey[256], char szValueName[], char szBuffer[], DWORD);
char RegValue[500];
char varData[] = "C:\\Programme\\Gemeinsame Dateien\\Microsoft Shared\\PhotoEd\\PhotoEd.EXE\" \"%1";
main(void)
{
//if (!GetRegKey(HKEY_LOCAL_MACHINE, "Software\\Classes\\jpegfile\\shell\\open\\command", "(Standard)", RegValue, sizeof RegValue))
//Der "Standard" schlüssel ist direkt über den namen nicht ansprechbar, deswegen greife ich über den index "0" darauf zu... ;-)
if (!GetRegKey(HKEY_LOCAL_MACHINE, "Software\\Classes\\jpegfile\\shell\\open\\command", 0, RegValue, sizeof RegValue))
{
cout << "Fehler beim schreibvorgang";
}
else
{
cout << "Schluessel Eintrag wurde erfolgreich vorgenommen";
}
getch();
return(0);
}
bool GetRegKey(HKEY hMainKey, char szSubKey[256], char szValueName[], char szBuffer[], DWORD BufferSize)
{
HKEY hOpenedKey;
if (!RegOpenKeyEx(hMainKey, szSubKey, 0, KEY_ALL_ACCESS, &hOpenedKey) == ERROR_SUCCESS)
{
cout << "Fehler beim Oeffnen des Reg Keys";
return false;
}
//RegSetValueEx(hOpenedKey,"(Standard)",NULL,REG_SZ,(CONST BYTE*)varData,strlen(varData));
//Der "standard" schlüssel ist direkt über den namen nicht ansprechbar, deswegen greife ich über den index "0" darauf zu... ;-)
RegSetValueEx(hOpenedKey,0,NULL,REG_SZ,(CONST BYTE*)varData,strlen(varData));
RegCloseKey(hOpenedKey);
return true;
}