Хочу чтобы встроили браузер в программу

Пожелания по улучшению программы. Чего еще не хватает в DM.

Moderators: Korney San, Qwertiy, marcipan, igelizm

Post Reply
ALEXSOFT
Posts: 7
Joined: 18 Jan 2011, 13:41 Tue

Хочу чтобы встроили браузер в программу

Post by ALEXSOFT »

хочу чтобы встроили браузер в программу (как в StreamTransport) для закачки с турбобита и онлайн-видео.
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

ALEXSOFT wrote:хочу чтобы встроили браузер в программу
Поддерживаю.
Кстати, фактически встроенный браузер уже есть (компонент IE), надо добавить только текстовое поле для адресной строки...
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

В крайнем случае можно разместить ссылку на страницу

Code: Select all

<html> 
<head> 
<script language="JavaScript"> 
function open_url() 
{ 
document.getElementById('result').innerHTML="<iframe src='"+document.getElementById('txt_url').value+"' width=100% height=90% vspace=7px'></iframe>"; 
} 
</script> 
</head> 
<body> 
<input type=text id="txt_url" size=96 onEnter=open_url() value="Введите url в это поле и нажмите Открыть">
<input type="button" value="Открыть" onClick="open_url(); return false;">
</br>
<span id="result"> </span></br>
</body> 
</html>
на TopDownloads...
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
ALEXSOFT
Posts: 7
Joined: 18 Jan 2011, 13:41 Tue

Re:

Post by ALEXSOFT »

Qwertiy wrote:надо добавить только текстовое поле для адресной строки...
и общий кукиш :D
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

Qwertiy wrote:
ALEXSOFT wrote:хочу чтобы встроили браузер в программу
Поддерживаю.
Кстати, фактически встроенный браузер уже есть (компонент IE), надо добавить только текстовое поле для адресной строки...
Сделал программу для перехода по произвольному адресу в DM.
DM Open Url.7z
Достаточно файла DM Open Url\bin\Release\DM Open Url.exe.
Если получаете сообщение "Ошибка получения доступа к документу.", то:
1. Обновите параметры.
2. Если дескриптор IE равен 0, то откройте Новости и обновите параметры ещё раз.
3. Если дескриптор DM равен 0, то убедитесь что он запущен, его заголовок начинается с "Doenload Master" и нет каких либо препятствий для обращения к нему этой программы.
ALEXSOFT wrote:... для закачки с турбобита
Всё равно не работает... Подозреваю, что в UserAgent'е что-то не так...
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
ALEXSOFT
Posts: 7
Joined: 18 Jan 2011, 13:41 Tue

Re: Конкретно "Чего бы ещё хотелось!"

Post by ALEXSOFT »

Сделал программу для перехода по произвольному адресу в DM
на ХР не пашет. а плагином её сделать можно? чтоб панель была в DM.
Всё равно не работает... Подозреваю, что в UserAgent'е что-то не так...
помоему ссылка передается так же как и из отдельного браузера. :(
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

ALEXSOFT wrote:
Сделал программу для перехода по произвольному адресу в DM
на ХР не пашет.
У меня XP и всё работает... Скринвидео. Пишите подробнее что именно не работает.
Убедитесь, что выполнены пункты 1-3 предыдущего сообщения. Подсказки:
1. Если в DM с момента запуска ни разу не открывалась страница TopDownloads, то дескриптор IE равен 0.
2. Если используется программа, меняющая заголовок окна DM (например, ZeroBlender), то дескриптор DM равен 0.
3. Если открывалось ftp (т. е. для отображения использовался проводник, а не IE), то надо открыть нормальную страницу (http) и обновить параметры.
4. Возможно (не проверял), надо, чтобы обе программы были запущены от одного имени и (разумеется) без флажка "Защитить компьютер от несанкционированных действий этой программы".
5. Антивирус/firewall - выполняется доступ к памяти другой программы.
ALEXSOFT wrote:а плагином её сделать можно?
Теоретически это возможно, но ничего не даёт... В прогрмме используется WinApi для получения доступа к элементу IE в DM. Если посмотрите код, то увидите, что сначала ищется окно с классом "TMainForm" и началом заголовка "Download Master", а затем в нём ищется окно с классом "Internet Explorer_Server". Плагинам не предоставляется доступ ни к окну, ни к элементам формы, поэтому преимуществ никаких...
К тому же, если бы я знал как написать на VB.NET плагин, то вот это сделал бы сам. Хотя, надеюсь, найду время разобраться, как превратить пример плагина на Delphi в VB.NET...
ALEXSOFT wrote:чтоб панель была в DM.
Не уверен, что это в принципе возможно... Точнее, поместить поле в DM скорее всего возможно, но вот обработка событий будет проблемой...
ALEXSOFT wrote:
Всё равно не работает... Подозреваю, что в UserAgent'е что-то не так...
помоему ссылка передается так же как и из отдельного браузера. :(
По сути так оно и есть - что обычный IE, что тут IE - разницы никакой...
Пока писал программу, посмотрел, что передаёт IE как UserAgent:
IE ClientInformation.png
Подозреваю, что DM передаёт что-то другое, хотя и выбрано Получать из IE...

PS: Ограничение на вложение 256 КБ - маловато...
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
ALEXSOFT
Posts: 7
Joined: 18 Jan 2011, 13:41 Tue

Re: Конкретно "Чего бы ещё хотелось!"

Post by ALEXSOFT »

Image

Code: Select all

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. Не удается найти указанный файл.
File name: 'Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
   at DM_Open_Url.Form1.BtnOpen_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)

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].



************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
DM Open Url
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Documents%20and%20Settings/user/Рабочий%20стол/DM%20Open%20Url/obj/Release/DM%20Open%20Url.exe
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 8.0.0.0
    Win32 Version: 8.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Runtime.Remoting
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
По сути так оно и есть - что обычный IE, что тут IE - разницы никакой...
дм и ие один и тотже кукишь используют?
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

ALEXSOFT wrote:Image
Понятно. У Вас версия mshtml не соответствует версии, прописанной в зависимостях... Поставьте .NET Framework 4 (можно найти на сайте Microsoft или на FileHippo.com).

На всякий случай:
Open URL - References.png
ALEXSOFT wrote:дм и ие один и тотже кукишь используют?
Не знаю. Но думаю, DM (в отличие от IE) не скажет, что connectionSpeed не поддерживается...
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
ALEXSOFT
Posts: 7
Joined: 18 Jan 2011, 13:41 Tue

Re: Хочу чтобы встроили браузер в программу

Post by ALEXSOFT »

Qwertiy не лучше ли сделать стартовую страницу от яндекса (вместо topdownloads.ru) чем качать НЕТы всякие?
Qwertiy
Гуру
Posts: 764
Joined: 07 Jan 2011, 1:45 Fri
Location: Россия

Post by Qwertiy »

Изменил CopyLocal у этой библиотеки на True. Терерь таких проблем быть не должно... Скачать.
ALEXSOFT wrote:Qwertiy не лучше ли сделать стартовую страницу от яндекса (вместо topdownloads.ru) чем качать НЕТы всякие?
Каким образом? TopDownloads не является стартовой страницей, такой переход по команде Домой делает DM...

А .Net Framework 4 всё равно скачать стоит... Многие программы требуют более новую версию, чем 2 (обычно 3.5).
Кстати, если бы я написал эту программу в VS2010, то 4-я версия была бы обязательна для её запуска.
Пожалуйста, посмотрите: Использование ссылок в тексте сообщений
Поддерживаются браузеры: Опера 12, Хром, Firefox.
Обновлено: 21.09.2012. Надо бы ещё подправить и обновить...
Ссылки на файлы обновлены: 24.05.2013.
ALEXSOFT
Posts: 7
Joined: 18 Jan 2011, 13:41 Tue

Re: Хочу чтобы встроили браузер в программу

Post by ALEXSOFT »

заработало, а толку 0, ни турбобит ни видео не качает
ALEXSOFT
Posts: 7
Joined: 18 Jan 2011, 13:41 Tue

Re: Хочу чтобы встроили браузер в программу

Post by ALEXSOFT »

все? больше никому не надо чтоль?
Post Reply