Я бы такой вариант предложил:
Файла с расширением html ассоциируется обычно с браузером по умолчанию.
Если создать такой файл с расширением html и пременить FindExecutable,то можно узнать кто должен открыть такой файл
Code
#include "stdio.h"
#include "shellapi.h";
................................................
char * GetNames(char * St, char Res[255])
{int j,i,l=0;
j=0;
for (i=StrLen(St); i; i--)
if (St[i]=='\\') {
j=i;
break;
};
j++;
for (i=j; i<=StrLen(St); i++, l++)
Res[l]=St[i];
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{FILE * F;
char A[255],B[255];
char *name="1.html";
F=fopen(name,"wt");
fclose(F);
FindExecutable(name,"",A);
DeleteFile(name);
ShowMessage(A);
GetNames(A,B);
ShowMessage(B);
}
Так можно определять какая программа открывает файл с каким-либо расширением.
Недостаток метода:
Нужно создавать файл 1.html.
Хотя,если точно знать,что в каком-то месте лежит файл с таким расширением,то можно указать его путь в функцию.