Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
27.10.2006, 08:45
|
|||
|---|---|---|---|
Как разрешить внедренному в IE контролу выполнить приложение на клиенте? |
|||
|
#18+
Добрый день! Есть внетренный в IE контрол. Необходимо, чтобы по нажатию на кнопку у клиента запускалось какое-либо приложение. Пусть это будет блокнот. Как это можно сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.10.2006, 10:52
|
|||
|---|---|---|---|
|
|||
Как разрешить внедренному в IE контролу выполнить приложение на клиенте? |
|||
|
#18+
Куда внедренный и какой кнопки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.10.2006, 11:17
|
|||
|---|---|---|---|
Как разрешить внедренному в IE контролу выполнить приложение на клиенте? |
|||
|
#18+
Есть Windows Form Control, который размещен на web странице. Что-то типа <html> <body> <object id="testCONTROL" classid="HelloWordControl.dll#HelloWordControl.TestControl" style="width: 10px; height: 10px"></object> </body> </html> Сам контрол костоит из текстового поля и кнопки. И должна происходить следующая процедура. Например. 1. В текстовое поле пишем название программы (notepad.exe) 2. Нажимаем кнопку. На клиенте должен запуститься Блокнот. Люди советуют написать ActiveX. Но на хрена тогда вся эта супер-пупер технология .NET если я сейчас возьму древний VB и сяду писать ActiveX? Мне кажется должна же быть стандартная технология (альтернатива ActiveX)? При попытке запустить приложение Process.Start("notepad.exe") ругается что нет прав. Permission Set создал, дал все права которые только возможно. Но по видимому еще что-то в коде надо написать... Ругается так: See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box. ************** Exception Text ************** System.Security.SecurityException: Request failed. at System.Security.CodeAccessSecurityEngine.ThrowSecurityException(Assembly asm, PermissionSet granted, PermissionSet refused, RuntimeMethodHandle rmh, SecurityAction action, Object demand, IPermission permThatFailed) at System.Security.CodeAccessSecurityEngine.ThrowSecurityException(Object assemblyOrString, PermissionSet granted, PermissionSet refused, RuntimeMethodHandle rmh, SecurityAction action, Object demand, IPermission permThatFailed) at System.Security.CodeAccessSecurityEngine.CheckSetHelper(PermissionSet grants, PermissionSet refused, PermissionSet demands, RuntimeMethodHandle rmh, Object assemblyOrString, SecurityAction action, Boolean throwException) at System.Security.CodeAccessSecurityEngine.CheckSetHelper(CompressedStack cs, PermissionSet grants, PermissionSet refused, PermissionSet demands, RuntimeMethodHandle rmh, Assembly asm, SecurityAction action) at HelloWordControl.TestControl.CreateFolder() at HelloWordControl.TestControl.button1_Click(Object sender, EventArgs e) at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) The action that failed was: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.10.2006, 11:27
|
|||
|---|---|---|---|
|
|||
Как разрешить внедренному в IE контролу выполнить приложение на клиенте? |
|||
|
#18+
:) Ну так чего бы не кличать если Вы пытаетесь выполнить команды на которые у контрола "нет разрешения" Есть т.н. политика безопасности .NET Ваш компонент загружаеться из удаленной сборки, поэтому и прав нет. Вам нужно сделать Increase Assembly Trust в Microsoft .NET Framework x.x Configuration в Администрировании Для длл Вашего компонента ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.10.2006, 12:39
|
|||
|---|---|---|---|
Как разрешить внедренному в IE контролу выполнить приложение на клиенте? |
|||
|
#18+
Не, почему-тo Increase Assembly Trust не помогает. Вообще перестает работать, как только ключом подпишешь. Может я что-то не доделал... В любом случае спасибо за подсказку. Сделал Code Groups с указанием на мою DLL и дал ей права Full Trust. По идее то же самое. И в коде обрамил мою строчку new SecurityPermission(PermissionState.Unrestricted).Assert(); Process.Start("notepad.exe"); SecurityPermission.RevertAssert(); И заработало! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.10.2006, 12:51
|
|||
|---|---|---|---|
|
|||
Как разрешить внедренному в IE контролу выполнить приложение на клиенте? |
|||
|
#18+
>Вообще перестает работать, как только ключом подпишешь На сколько я понимаю, мы сначала подписываем, а затем делаем Increase Assembly Trust, иначе после подписания строгое имя сборки меняеться и на нее не действует ранее созданное правило.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=18&mobile=1&tid=1388153]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 357ms |

| 0 / 0 |
