przypisanie exe'ka do nowego formatu pliku

0

Dłubałem w rejestrze szukając miejsc w którym trzeba było by dopisać mój program rozszerzenie itp.
ale efekt był opłakany.

Do rzeczy oto problem:

//program
C:\folder\program.exe

//plik
*.moj_plik

chciałbym zrobić takie małe hokus pokus żeby po klikniecie na ikonie pliku PPM w menu wyświetliła się nowa opcja np.
"zrób cos"
która uruchamiała by mój program.

jeżeli ktoś wie jakie mam zmienić klucze w rejestrze proszę pisać będę wdzięczny:]

0

Czyli po mojemu:

void RegisterFileExtension(char Ext[], char Name[],char ProgramName[], char Icon[])
{
HKEY key;
char str[40];
  if(Ext[1] == '.')    Ext = '.' + Ext;


	sprintf(str,"%s",Ext);

		if( RegOpenKeyEx(HKEY_CLASSES_ROOT, str, 0, KEY_CREATE_SUB_KEY | KEY_ALL_ACCESS,&key)!=ERROR_SUCCESS) RegCreateKey(HKEY_CLASSES_ROOT,str,&key);
		   
		
		    RegSetValueEx(key,"",0,REG_SZ,(LPBYTE)Name,  strlen(Name));

		RegCloseKey(key);
		

		
	sprintf(str,"%s%s",Name, "\\shell\\open\\command");
		if( RegOpenKeyEx(HKEY_CLASSES_ROOT, str, 0, KEY_CREATE_SUB_KEY | KEY_ALL_ACCESS,&key)!=ERROR_SUCCESS) RegCreateKey(HKEY_CLASSES_ROOT,str,&key);

			sprintf(str,"%s%s%s%s","\"",ProgramName,"\"","\"%1\"");

			RegSetValueEx(key,"",0,REG_SZ,(LPBYTE)str, strlen(str));

		RegCloseKey(key);


	sprintf(str,"%s%s",Name, "\\DefaultIcon");

		if( RegOpenKeyEx(HKEY_CLASSES_ROOT, str, 0, KEY_CREATE_SUB_KEY | KEY_ALL_ACCESS,&key)!=ERROR_SUCCESS) RegCreateKey(HKEY_CLASSES_ROOT,str,&key);

			sprintf(str,"%s",Icon);

			RegSetValueEx(key,"",0,REG_SZ,(LPBYTE)str, strlen(str));

		RegCloseKey(key);

	return;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1