· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.WIN32 —› Открыть/закрыть/скрыть html-doc.

. 1 . 2 . >>

Посл.отвђт Сообщенiе


Дата: Авг 9, 2003 15:01:49

Можно с помощью ShellExecute открыть документ html с определенными параметрами, т.к width, top? А можно его потом закрыть, или открыть в режиме hidden?


Дата: Авг 9, 2003 16:43:39

Xтобы открыть и закрыть его потом лучше использовать CreateProcess - TerminateProcess (Хотя использование этой функции рекомендуется в крайнем случае, но при создании процесса известен его хендл).
В структуре STARTUPINFO можно задать параметры окна.
Более подробно смотри в MSDN - Platform SDK: DLLs, Processes, and Threads.


Дата: Авг 9, 2003 17:52:44

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


Дата: Авг 9, 2003 19:18:10

Варианты зависят от того, что тебе нужно.

Можно найти окно браузера по имени и посылать ему wm_move, wm_close, и т.д.

Можно добавить в html-ку скрипт, ресайзящий или двигающий окно. ;)


Дата: Авг 9, 2003 19:56:03

Нееее, .HTM* может быть ассу.. ассо... ассоциирован (ух!) даже и не с браузером, а, например, с FrontPage'ом. В общем, есть вариант получше, а именно:
http://www.wasm.ru/forum/index.php?action=vthread&forum=4&topic=1974


Дата: Авг 10, 2003 12:37:50

Ууу, это сильно. Мне в общем то не нужно управлять окном браузера, достаточно один раз задать ему параметры, но будем разбираться.

И ещё, ни кто не подскажет, где можно найти описания (жел. на русском :) самых частоиспользуемых функций,или где их можно найти (не мсдн) по темам, вроде - работа со строками, файлами. А то я после досовских интов, на API не умею даже строчки разбивать.


Дата: Авг 10, 2003 16:16:42

А если в командной стрке указать только путь к хтмл то должно вызваться то приложение которое привязано по умолчанию в Windows. (конечно я могу ошибаться, но, кажется, это работало).
WinAPI на русском посмотри здесь http://www.bcbdev.ru.


Дата: Авг 10, 2003 16:28:18

В книге Зубкова это реализовано так...
; winurl.asm
; Пример програмы для win32.
; запускает установленный по умолчанию броузер на адрес, указанный в строке URL
; аналогично можно запускать любую программу, документ, и любой другой файл,
; для которого определена операция open
;
; Компиляция MASM
;  ml /c /coff /Cp winurl.asm
;  link winurl.obj /subsystem:windows
;
; Компиляция TASM
;  tasm /m /ml /D_TASM_ winurl.asm
;  tlink32 /Tpe /aa /c /x winurl.obj
;
; Компиляция WASM
;  wasm winurl.asm
;  wlink file winurl.obj form windows nt
;

include	shell32.inc
include	kernel32.inc

	.386
	.model flat
	.const
URL db	'http://www.lionking.org/~cubbi/',0
	.code
_start:			; метка точки входа должна начинаться с подчёркивания
	xor	ebx,ebx
	push	ebx		; для исполнимых файлов - способ показа
	push	ebx		; рабочая директория
	push	ebx		; командная строка
	push	offset URL	; имя файла с путём
	push	ebx		; операция open или print (если NULL - open)
	push	ebx		; идентификатор окна, которое получит сообщения
	call	ShellExecute	; ShellExecute(NULL,NULL,url,NULL,NULL,NULL)
	push	ebx		; код выхода 
	call	ExitProcess	; ExitProcess(0)
end	_start


Дата: Авг 10, 2003 16:33:47

А если в командной строке указать только путь к хтмл то должно вызваться то приложение которое привязано по умолчанию в Windows. (конечно я могу ошибаться, но, кажется, это работало).


Дата: Авг 10, 2003 16:38:49

А если в командной строке указать только путь к хтмл то должно вызваться то приложение которое привязано по умолчанию в Windows. (конечно я могу ошибаться, но, кажется, это работало).
по WinAPI посмотри здесь http://www.bcbdev.ru/winapi.htm


Дата: Авг 10, 2003 16:43:54

Прошу прощения за многообразие сообщений, проблемы со связью...


Дата: Авг 10, 2003 18:46:34

2DaemoniacaL - так и есть; спасибо за ссылку.

2KiNDeR - проблемы открытия ShellExecute-ом у меня нет, т.к. книга зубкова есть :) Проблема в закрытии и атрибутах окна.

2bsl_zcs - к сожалению скрипт не может сам себя закрыть, я уже об этом думала.


Дата: Авг 10, 2003 19:22:17

KiNDeR
В примере Зубкова есть один маленький баг, а именно:
последний параметр для ShellExecute должен быть не ноль, а SW_SHOWNORMAL. Иначе это не будет работать в некоторых случаях под Windows ME.

Misty
Ууу, это сильно. Мне в общем то не нужно управлять окном браузера, достаточно один раз задать ему параметры, но будем разбираться.
А что в нём разбираться? Надо просто откомпилить DLL и юзать её в своих приложениях :-) Я всё это дело тестил на 98, ME, 2000 и XP.


Дата: Авг 10, 2003 20:03:27

Я понял что мне не нравится в книге Зубкова-это то что у него
все примеры написаны на tasm, поэтому и глюки, вот если бы он
пользовался masm32 проблем бы не было ;-)


Дата: Авг 11, 2003 16:55:13 · Поправил: KiNDeR

Asterix
Почитай внимательно, Зубков пишет свои примеры под три компилятора tasm, masm, wasm. Причем упор делает как раз на masm... А глюки от того, что редакторы книги недосмотрели....

. 1 . 2 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.092