ryfm
Для проверки установленного ДотНета имхо стоит мониторить веточку
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework в реестре
вот код который я юзаю ...
Код:
[Run]
Filename: {tmp}\dotnetfx.exe;
Parameters: ;
StatusMsg: Установка .Net Framework {#ApplVersion} ...;
Components: main;
Flags: runmaximized
Filename: {tmp}\devupdate40.exe;
Parameters: ;
StatusMsg: Установка .Net Framework Device Update ...;
Components: update\update;
Flags: runmaximized
Filename: {tmp}\sp1.exe;
Parameters: ;
StatusMsg: Установка .Net Framework SP1 ...;
Components: update\sp1;
Flags: runmaximized
[Files]
Source: dotnetfx.exe;
DestDir: {tmp};
Components: main;
Attribs: hidden system;
Flags: ignoreversion
Source: devupdate40.exe;
DestDir: {tmp};
Components: update\update;
Attribs: hidden system;
Flags: ignoreversion
Source: sp1.exe;
DestDir: {tmp};
Components: update\sp1;
Attribs: hidden system;
Flags: ignoreversion
Кста ... у меня несколько программ которые юзают библиотеки ДотНета и я в свою ветку в реестре пишу, что ДотНета уже установлен. При установке следующей программы я читаю эту ветку ...