Rebol/ View dll do-browser crashing browser
[1/4] from: bry:itnisk at: 21-Mar-2004 15:12
Hi, I was adapting Kevin Adams search2.r to
be a searchbar in explorer, pretty much I
just went through and replaced browse/only
with do-browser some extra joins, it works
only, not very often, about 70% of the time
it crashes the browser, if the browser opens
with the searchbar window open it crashes as
well basically if the searchbar crashes the
browser once, it will restart about 3-4
times before it stops crashing.
I sort of find that annoying.
now it was completely fine before I added in
do-browser, only then of course every time I
did a search and clicked on the button it
opened a new browser instance. So I assume
it has to be do-browser, only as one can see
from the code here do-browser is also called
by buttons being pushed:
about: layout [
backdrop 219.219.219
h1 "Search Center" 28.52.86
text "Version 1.2.0"
text "written by Kevin Adams,
[kadams--netlane--com]"
button "okay" [unview] 70x20 effect
[gradient 0.0.0]
]
win1: layout/size [
backdrop 219.219.219
h1 "Search Center" 28.52.86
guide
pad 20
button "Section One" [panels/pane:
panel1 show panels] 85x20 effect
[gradient 0.0.0]
button "Section Two" [panels/pane:
panel2 show panels] 85x20 effect
[gradient 0.0.0]
button "About" [view/new center-face
about] 85x20 effect [gradient 0.0.0]
button "Quit" [quit] 85x20 effect
[gradient 0.0.0]
return
box 2x270 28.52.86
return
panels: box 180x280
] 350x350
panel1: layout [
backdrop 219.219.219
across
h2 "Dictionary Search" 28.52.86
return
word_to_lookup2: field 120 [
]
button "Go" 30 effect [gradient
0.0.0] [
do-browser join "go('" join
[http://www.m-w.com/cgi-bin/dictionary "?
book=dictionary&va="
word_to_lookup2/text] "')"
]
return
h2 "Google Search" 28.52.86
return
word_to_lookup3: field 120 [
]
button "Go" 30 effect [gradient 0.0.0] [
do-browser join "go('" join
["http://www.google.com/search?q="
word_to_lookup3/text "&btnG=Google+Search"] "
')"
]
return
h2 "Yahoo Search" 28.52.86
return
word_to_lookup6: field 120 [
]
button "Go" 30 effect [gradient 0.0.0] [
do-browser join "go('" join
["http://search.yahoo.com/bin/search?p="
word_to_lookup6/text ] "')"
]
return
h2 "Slashdot Search" 28.52.86
return
word_to_lookup1: field 120 [
]
button "Go" 30 effect [gradient 0.0.0] [
do-browser join "go('" join
["http://slashdot.org/search.pl?
query="word_to_lookup1/text ] "')"
]
]
panel2: layout [
backdrop 219.219.219
across
return
h2 "Image Search" 28.52.86
return
word_to_lookup4: field 120 [
]
button "Go" 30 effect [gradient 0.0.0] [
do-browser join "go('" join
["http://images.google.com/images?num=20&q="
word_to_lookup4/text
&btnG=Google+Search
] "')"
]
return
h2 "Usenet Search" 28.52.86
return
word_to_lookup5: field 120 [
]
button "Go" 30 effect [gradient 0.0.0] [
do-browser join "go('" join
["http://groups.google.com/groups?q="
word_to_lookup5/text "&hl=&btnG=Google+Search
]
')"
]
return
h2 "eBay Search" 28.52.86
return
word_to_lookup7: field 120 [
]
button "Go" 30 effect [gradient 0.0.0]
[
do-browser join "go('" join
["http://search.ebay.com/search/search.dll?
MfcISAPICommand=GetResult&ht=1&Sor
tProperty=MetaEndSort&query="
word_to_lookup7/text "&x=-567&y=-92"] "')"
]
return
h2 "Stock Quote" 28.52.86
return
word_to_lookup8: field 120 [
]
button "Go" 30 effect [gradient 0.0.0] [
do-browser join "go('" join
["http://finance.yahoo.com/q?s="
word_to_lookup8/text "&d=v3"] "')"
]
]
panel1/offset: 0x0
panel2/offset: 0x0
panels/pane: panel1
view center-face win1
'go' is just a function in my javascript, as
follows:
function go(url){
window.open(url,"_main","");
}
to get it to open in the new browser window.
The helpful IE error message is:
---------------------------
iexplore.exe - Application Error
---------------------------
The instruction at "0x77fcb007" referenced
memory at "0x00650070". The memory could not
be "written".
Click on OK to terminate the program
---------------------------
OK
[2/4] from: bry::itnisk::com at: 21-Mar-2004 15:34
here's one of the error reports I've had on
this:
Description:
The description for Event ID ( 1000 ) in
Source ( Microsoft Internet Explorer )
cannot be found. The local computer may not
have the necessary registry information or
message DLL files to display messages from a
remote computer. The following information
is part of the event: iexplore.exe;
6.0.2600.0; ntdll.dll; 5.0.2163.1; 0004b007.
Data
bytes:
0000: 41 70 70 6c 69 63 61 74 Applicat
0008: 69 6f 6e 20 46 61 69 6c ion Fail
0010: 75 72 65 20 20 69 65 78 ure iex
0018: 70 6c 6f 72 65 2e 65 78 plore.ex
0020: 65 20 36 2e 30 2e 32 36 e 6.0.26
0028: 30 30 2e 30 20 69 6e 20 00.0 in
0030: 6e 74 64 6c 6c 2e 64 6c ntdll.dl
0038: 6c 20 35 2e 30 2e 32 31 l 5.0.21
0040: 36 33 2e 31 20 61 74 20 63.1 at
0048: 6f 66 66 73 65 74 20 30 offset 0
0050: 30 30 34 62 30 30 37 0d 004b007.
0058: 0a .
words:
0000: 6c707041 74616369 206e6f69 6c696146
0010: 20657275 78656920 726f6c70 78652e65
0020: 2e362065 36322e30 302e3030 206e6920
0030: 6c64746e 6c642e6c 2e35206c 31322e30
0040: 312e3336 20746120 7366666f 30207465
0050: 62343030 0d373030 0a
you will notice that viewdll is not
mentioned in the error, this is when the
error occurs with the html page hosting view
dll as a searchbar (if you want to check
this out run the code shown earlier as an .r
file referenced via an object from the html
page, and load the html page into your
searchbar by changing the following registry
settings
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Interne
t Explorer\Search\CustomizeSearch and
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Interne
t Explorer\Search\SearchAssistant) to refer
to the html page using the file:/// protocol
however if I load that same html page
directly into the browser, and run a query
it works, but if I then try to use the back
button to go back to the preceding page
hosting the Rebol dll I get the following:
Description:
The description for Event ID ( 1000 ) in
Source ( Microsoft Internet Explorer )
cannot be found. The local computer may not
have the necessary registry information or
message DLL files to display messages from a
remote computer. The following information
is part of the event: iexplore.exe;
6.0.2600.0; viewdll.dll; 0.0.0.0; 0001cd00.
Data
bytes:
0000: 41 70 70 6c 69 63 61 74 Applicat
0008: 69 6f 6e 20 46 61 69 6c ion Fail
0010: 75 72 65 20 20 69 65 78 ure iex
0018: 70 6c 6f 72 65 2e 65 78 plore.ex
0020: 65 20 36 2e 30 2e 32 36 e 6.0.26
0028: 30 30 2e 30 20 69 6e 20 00.0 in
0030: 76 69 65 77 64 6c 6c 2e viewdll.
0038: 64 6c 6c 20 30 2e 30 2e dll 0.0.
0040: 30 2e 30 20 61 74 20 6f 0.0 at o
0048: 66 66 73 65 74 20 30 30 ffset 00
0050: 30 31 63 64 30 30 0d 0a 01cd00..
words:
0000: 6c707041 74616369 206e6f69 6c696146
0010: 20657275 78656920 726f6c70 78652e65
0020: 2e362065 36322e30 302e3030 206e6920
0030: 77656976 2e6c6c64 206c6c64 2e302e30
0040: 20302e30 6f207461 65736666 30302074
0050: 64633130 0a0d3030
So I think it is clear that the error is in
fact running from View dll.
Any ideas? suggestions?
[3/4] from: rebol1:covenantbg at: 22-Mar-2004 11:58
Hello! Two questions:
1) Do you have the evaluate function in your HTML page code?
2) Why are you replacing browser with do-browser? browse still works
great for launching the web browser.
Josh
[4/4] from: bry:itnisk at: 22-Mar-2004 23:07
Yes I do have the evaluate function.
I was replacing browse with do-browser so
that I could pass up code to the html page
to load the page in the _main browser
window. The search bar, which you see when
you click on the search button on your
browsers chrome, is in a window named
_search, so if you want to open a page in
the main window that called the search
window you have to have the following:
window.open(url,"_main");
anyway I really don't understand how do-
browser should be affecting this, I mean
that do-browser should only be called when I
click on a button in the rebol view form.
yet nonetheless if I start that page I get
the errors outlined on loading the page, yet
as also noted these errors are not 100% of
the time, but around 70%. The most logical
thing would be a memory leak somewhere, but
my system doesn't seem to be using any
excessive resources.