|
|
|
Получение содержимого адресной строки Explorer-а внутри ActiveX Plugin-а
|
|||
|---|---|---|---|
|
#18+
Передо мной стоит задача создать и зарегистрировать свой .NET ActiveX UserControl так, чтобы в Internet Explorer-е при открытии ссылки на Tiff-файл, внутрь стала подгружаться моя .NET ActiveX DLL-компонента. Примерно также как это делает Imaging for Windows. Для этого в Visual Studio я создал «Windows Forms Control Library» проект, в Properties которого на вкладке “Application\Assembly Information…” установил флажок “Make assembly COM-visible”, а на вкладке “Build” - флажок “Register for COM interop”. В AssemblyInfo.cs поместил ссылку [assembly: AssemblyKeyFile(@"ImagingSedoControl.snk")] на файл ключей, созданный с помощью команды “sn.exe -k ImagingSedoControl.snk” Скомпилировал dll-ку и затем поместил сборку в GAC. При этом в реестре создались все необходимые ключи и разделы. Далее основываясь на http://msdn.microsoft.com/en-us/library/aa751976(VS.85).aspx зарегистрировал CLSID основного класса компонента ImagingSedoControl.MainForm в разделе «HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/tiff», а в разделе «HKEY_CLASSES_ROOT\.tif» прописал название основного класса (Default) = ImagingSedoControl.MainForm. После этого в Internet Explorer-е при открытии ссылки на Tiff-файл внутрь стал загружаться мой компонент. Но возникла другая проблема. Сам Tiff-файл при этом не отображается в окне, так как содержимое адресной строки Internet Explorer-а не поступает в свойство CommandLineArgs UserControl-а, которое я использую чтобы узнать какой файл мне необходимо отобразить. Как внутри моего компонента узнать содержимое строки адреса Internet Explorer-а? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2009, 16:13:38 |
|
||
|
Получение содержимого адресной строки Explorer-а внутри ActiveX Plugin-а
|
|||
|---|---|---|---|
|
#18+
Up ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2009, 00:23:29 |
|
||
|
Получение содержимого адресной строки Explorer-а внутри ActiveX Plugin-а
|
|||
|---|---|---|---|
|
#18+
Если кому-то понадобится, то я подключил в reference проекта две ссылки: 1. Microsoft.mshtml 2. Interop.SHDocVw (Microsoft Internet Controls) Тогда выявление ссылки на адресную строку можно реализовать с помощью такого кода. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. Эта ошибка связана не с этим кодом, а или с какими-то общими системными настройками или настройками проекта или с нарушением общих принципов построения ActiveX компонентов на основе UserControl. Если кто знает, то подскажите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2009, 14:59:13 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=124&tid=1344508]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 233ms |
| total: | 383ms |

| 0 / 0 |
