Иконка ресурса

DLL Is-All.dll Обновленный пример

Нет прав для скачивания
  • Автор темы Автор темы MCV
  • Дата начала Дата начала

MCV

Новичок
Пользователь MCV разместил новый ресурс:

Is-All.dll - Библиотека добавляет дополнительные функции в Inno Setup

Эта библиотека добавляет 15 дополнительных функций в Inno Setup
Полный контроль панели задач в Windows Vista или более поздних версиях
Изменение приоритета процесса
Функция для получения значения «Application Handle»
Добавление или удаление исключений в брандмауэре Windows
Поддерживает воспроизведение музыки из памяти.

Кредиты для: Krinkels. помогая проекту в его начале

При необходимости, эта библиотека будет изменена, если вы желаете одну или несколько дополнительных функций для этой...

Узнать больше об этом ресурсе...
 
MCV, Hello, can you tell me pls, song name?
All what need it add that code in my script, and it will work, right?
745dc60cf4d8.png
 
Последнее редактирование:
agent555,
Код:
[Setup]
AppName=My Program
AppVerName=My Program
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputBaseFilename=setup
OutputDir=.

[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl

[Icons]
Name: {group}\{cm:UninstallProgram,My Program}; Filename: {uninstallexe}

[ code]
// Вспомогательные функции для установки Inno
// Используется для добавления / удаления программ из правил брандмауэра Windows
// Код, родом из http://news.jrsoftware.org/news/innosetup/msg43799.html

const
  NET_FW_SCOPE_ALL = 0;
  NET_FW_IP_VERSION_ANY = 2;

procedure SetFirewallException(AppName,FileName:string);
var
  FirewallObject: Variant;
  FirewallManager: Variant;
  FirewallProfile: Variant;
begin
  try
    FirewallObject := CreateOleObject('HNetCfg.FwAuthorizedApplication');
    FirewallObject.ProcessImageFileName := FileName;
    FirewallObject.Name := AppName;
    FirewallObject.Scope := NET_FW_SCOPE_ALL;
    FirewallObject.IpVersion := NET_FW_IP_VERSION_ANY;
    FirewallObject.Enabled := True;
    FirewallManager := CreateOleObject('HNetCfg.FwMgr');
    FirewallProfile := FirewallManager.LocalPolicy.CurrentProfile;
    FirewallProfile.AuthorizedApplications.Add(FirewallObject);
  except
  end;
end;

procedure RemoveFirewallException( FileName:string );
var
  FirewallManager: Variant;
  FirewallProfile: Variant;
begin
  try
    FirewallManager := CreateOleObject('HNetCfg.FwMgr');
    FirewallProfile := FirewallManager.LocalPolicy.CurrentProfile;
    FireWallProfile.AuthorizedApplications.Remove(FileName);
  except
  end;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
  if CurStep=ssPostInstall then
     SetFirewallException('My Server', ExpandConstant('{app}')+'\TCPServer.exe');
end;

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
  if CurUninstallStep=usPostUninstall then
     RemoveFirewallException(ExpandConstant('{app}')+'\TCPServer.exe');
end;
 
sergey3695, на лист компонентов такое реально добавить? Т.е поставил галочку срабатывает код и добавляет в исключения, не добавил, не срабатывает ? Я как-то делал похожее, здесь (на сайте, пример через dllку) есть пример, только почему-то не срабатывало.
MCV, at beginning it work, but later get another error
2e7a14f07c20.jpg
bf3b2c65e08d.jpg
7abb3e79ad23.jpg
cf07b267e8f4.jpg
Попробуйте эту версию и расскажите мне, как это происходит, кроме того, я хотел бы знать, какая у вас операционная система.
Try this version and tell me how it goes, additionally I would like to know what operating system you have.
 

Вложения

procedure SetFirewallException(AppName,FileName:string); var FirewallObject: Variant; FirewallManager: Variant; FirewallProfile: Variant; begin try FirewallObject := CreateOleObject('HNetCfg.FwAuthorizedApplication'); FirewallObject.ProcessImageFileName := FileName; FirewallObject.Name := AppName; FirewallObject.Scope := NET_FW_SCOPE_ALL; FirewallObject.IpVersion := NET_FW_IP_VERSION_ANY; FirewallObject.Enabled := True; FirewallManager := CreateOleObject('HNetCfg.FwMgr'); FirewallProfile := FirewallManager.LocalPolicy.CurrentProfile; FirewallProfile.AuthorizedApplications.Add(FirewallObject); except end; end;
странная процедура 50\50 шанс раскрашить установку в момент отработки, при этом даже ошибки не высвечивает, как будто установка прошла.
 
Назад
Сверху