Отладчиком пройдись. Где эксепшен кидается? Подозреваю, что на TResourceStream.Create(). Тогда Finally не сильно поможет, его тоже придется на except менять. Как-то так:
Код:
Res := nil;
try
Res:=TResourceStream.Create(Hinstance, PChar('devcon'), PChar('EXEFILE'));
Res.SavetoFile(PChar('devcon.exe'));
Res.Free;
except
on Exception do
begin
ShowMessage('Resource not found');
if res <> nil then
Res.Free;
end;
end;
или же
Код:
Res := nil;
try
try
Res:=TResourceStream.Create(Hinstance, PChar('devcon'), PChar('EXEFILE'));
Res.SavetoFile(PChar('devcon.exe'));
except
on Exception do ShowMessage('Resource not found');
end;
finally
if res <> nil then
Res.Free;
end;
ЗЫЖ я бы вообще сделал нормальную олдскульную распаковку через WinAPI и не парился с эксепшенами.