I'll buy you a latte....

J

Juan T. Llibre

re:
!> I couldn't help but jump into the fray here. That last comment is
!> ludicrous, since no one has asked you to be a moderator for this

Actually, all MVPs do that. Doing it helps all of us save our time.

re:
!> People are free to post any question they want (even if it is ludicrous)

Of course, they are free to do that.
I am also free to point out that it's a question with no valid answer.

I never called his question "ludicrous". *He* called it a "ridiculous task",
and I pointed out that insisting on getting an answer for an impossible task
is a waste of everybody's time. I hope you don't mind that.

re:
!> it's not now, or ever, been YOUR job to editorialize the validity of those posts

I am not "editorializing", but thanks for the characterization.

I *did* post my opinion that he's saddled with a task for which there are better tools
than the one his superiors mistakenly think is the ideal tool for the job he was assigned.

I pointed them out, in fact.

re:
!> It's clear that Jim has a question related to the NG.

He was given a very strong opinion to not attempt to use that tool,
because it's the wrong tool for what he was tasked.

Peter also asked him the correct questions :

"why do you want to host a webbrowser control in a web page?
In other words, what is the goal?"

If the answer is "to keep my boss happy", I'm sorry,
I cannot honestly recommend that he do it by pulling wool over his boss's eyes.

re:
!> It's also clear that he has no choice in doing what he's been asked.

Actually, he does have a choice : educating his boss.

re:
!> I'd say keeping your boss happy is a problem worth solving.

I'd say that giving your boss the *right* answers is even better.
That, long-term, will keep him happier...and your job safer.




Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
======================================
 
F

Frankie

Scott:

RE:
I couldn't help but jump into the fray here. That last comment is
ludicrous, since no one has asked you to be a moderator for this (or any
other newsgroup).

Actually, I did. Last Thrusday I asked Juan to be a moderator of this group
and other newsgroups - and he is doing a great job!

Seriously, though, it is entirely likely that the OP here has *not* been
asked by his stupid boss to do this. Odds are he is just trying to use a
hammer, possibly gold in color, where a screw driver would be far better.
But even if I'm wrong about that and the gentleman posting the OP here is
really telling the honest truth, that truth would tell us that he is a
world-class brown-noser and will do whatever his boss asks - just to keep a
job in a company that doesn't listen to reason. It's even worse than that.
Apparently this obvious kludge is going to be presented in a class to
educate people who - by definition [of being a student in the class] -
wouldn't know any better. So it's not like this kludge isn't going to go
anywhere. Why should we help a world-class brown noser perpetuate an ugly
kludge well beyond some immediate project? (It's a rhetorical question).

Separately, there are a lot of folks coming to this NG who don't have a
strong technical background and are looking for ways to get their work done.
They will read other posts and get ideas for how to accomplish various
programming tasks. They simply aren't capable of decyphering - in the
moment - what is a kludge and what isn't. So it is a very good thing that we
have folks like Juan and the other more experienced developers - MVP or
not - who point out the fact that some things are bad to do. It isn't that
Juan or these more experienced developers *need* for someone to ask them to
point out kludges. They can't help it - being (1) more knowledgeable and (2)
wanting to promote best practices and standards - or at least help those
less knowledgeable to understand what the implications of their actions are.
It is obvious that many newer developers *don't* always understand the
implications of their actions - so it is helpful for someone to help them to
think it through. And for free!

It's clear that Jim has a question related to the NG.

Nobody questioned that.

It's also clear that he has no choice in doing what he's been asked.

I didn't know he was posting from Gitmo
Not everyone has the kind of employee/employer relationship where they can
just tell the powers that be that their assignment is ridiculous.

True - but that doesn't mean that we should help him to do accomplish a
kludge
I'd say keeping your boss happy is a problem worth solving.

At all costs?


-Frankie
 
G

Guest

Jim,
I'm not going to get involved in a potential flame war here as I don't think
it's productive. The bottom line is your efforts will likely be futile, since
the native COM IE Web Control was never designed to be hosted in a web page
via the <object clsid=.... tag arrangement. You would not be able to sink any
events and that's just for starters. Check here for details:

http://support.microsoft.com/kb/q183048/
-- Cheers,
Peter
Recursion: see Recursion
site: http://www.eggheadcafe.com
unBlog: http://petesbloggerama.blogspot.com
BlogMetaFinder: http://www.blogmetafinder.com
 
G

Guest

P.S. -
If you actually want to try it, here is some sample code:

<HTML>
<HEAD>
<SCRIPT LANGUAGE="VBScript>
<!--
Sub window_onload()

WebBrowser1.Navigate"

<WWLINK TYPE="GENERIC"
VALUE="http://www.microsoft.com"">http://www.microsoft.com"</WWLINK>

end sub
Sub document_onmousedown()
WebBrowser1.Navigate "<WWLINK TYPE="GENERIC"
VALUE="http://testserver1"">http://testserver1"</WWLINK>
end sub
-->
</SCRIPT>
<TITLE>WebBrowser Control in HTML</TITLE>
</HEAD>
<BODY>
<OBJECT ID="WebBrowser1" WIDTH=332 HEIGHT=276
CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">
<PARAM NAME="ExtentX" VALUE="8784">
<PARAM NAME="ExtentY" VALUE="7303">
<PARAM NAME="ViewMode" VALUE="1">
<PARAM NAME="Offline" VALUE="0">
<PARAM NAME="Silent" VALUE="0">
<PARAM NAME="RegisterAsBrowser" VALUE="0">
<PARAM NAME="RegisterAsDropTarget" VALUE="0">
<PARAM NAME="AutoArrange" VALUE="1">
<PARAM NAME="NoClientEdge" VALUE="1">
<PARAM NAME="AlignLeft" VALUE="0">
</OBJECT>
</BODY>
</HTML>

-- You will find very quickly that not only can you not sink any events, but
that the newer browser security restrictions on cross-frame scripting make it
impossible to even use. Convince whoever is making this ludicrous demand of
these facts, and use an IFRAME.
Peter
--
Recursion: see Recursion
site: http://www.eggheadcafe.com
unBlog: http://petesbloggerama.blogspot.com
BlogMetaFinder: http://www.blogmetafinder.com
 
S

Scott M.

Juan T. Llibre said:
re:
!> I couldn't help but jump into the fray here. That last comment is
!> ludicrous, since no one has asked you to be a moderator for this

Actually, all MVPs do that. Doing it helps all of us save our time.

No Juan, all MVP's try to be helpful and make suggestions on how to get good
use of NG's. There is nothing about your responses here that have done
that.
re:
!> People are free to post any question they want (even if it is
ludicrous)

Of course, they are free to do that.
I am also free to point out that it's a question with no valid answer.

But, when your response has been acknowledged and you have been asked to not
make further comment as they are not helping the OP, it would seem wise to
leave well enough alone.
I never called his question "ludicrous". *He* called it a "ridiculous
task",
and I pointed out that insisting on getting an answer for an impossible
task
is a waste of everybody's time. I hope you don't mind that.

re:
!> it's not now, or ever, been YOUR job to editorialize the validity of
those posts

I am not "editorializing", but thanks for the characterization.

You are making a determination about the validity of the task Jim has and
dissmissing it. That is the definition of editorializing.
I *did* post my opinion that he's saddled with a task for which there are
better tools
than the one his superiors mistakenly think is the ideal tool for the job
he was assigned.

I pointed them out, in fact.

re:
!> It's clear that Jim has a question related to the NG.

He was given a very strong opinion to not attempt to use that tool,
because it's the wrong tool for what he was tasked.

Yes, and he has said that your opinion is not viable or helpful, yet you
persist.
Peter also asked him the correct questions :

"why do you want to host a webbrowser control in a web page?
In other words, what is the goal?"

If the answer is "to keep my boss happy", I'm sorry,
I cannot honestly recommend that he do it by pulling wool over his boss's
eyes.

Now, who's off topic?
re:
!> It's also clear that he has no choice in doing what he's been asked.

Actually, he does have a choice : educating his boss.

Do you know where he works? Do you know his boss? I thought not.
re:
!> I'd say keeping your boss happy is a problem worth solving.

I'd say that giving your boss the *right* answers is even better.
That, long-term, will keep him happier...and your job safer.

Perhaps Jim hasn't been "asked" a question to which an answer is expected or
wanted. Perhaps, he's been given an assignment that needs immediate
completion. As a teacher, I know that we very often use examples in the
classroom that we would certainly not use in the real-world, but if it can
help to explain a concept, we do it and it can be very helpful.
 
S

Scott M.

The only thing in your post that is worth replying to is that no one said
Juan couldn't make his thoughts known. But, after doing so the first time,
his subsequent replies have just been antagonistic and serve no purpose.
The rest of your diatribe is purely speculation based on nothing.


Frankie said:
Scott:

RE:
I couldn't help but jump into the fray here. That last comment is
ludicrous, since no one has asked you to be a moderator for this (or any
other newsgroup).

Actually, I did. Last Thrusday I asked Juan to be a moderator of this
group and other newsgroups - and he is doing a great job!

Seriously, though, it is entirely likely that the OP here has *not* been
asked by his stupid boss to do this. Odds are he is just trying to use a
hammer, possibly gold in color, where a screw driver would be far better.
But even if I'm wrong about that and the gentleman posting the OP here is
really telling the honest truth, that truth would tell us that he is a
world-class brown-noser and will do whatever his boss asks - just to keep
a job in a company that doesn't listen to reason. It's even worse than
that. Apparently this obvious kludge is going to be presented in a class
to educate people who - by definition [of being a student in the class] -
wouldn't know any better. So it's not like this kludge isn't going to go
anywhere. Why should we help a world-class brown noser perpetuate an ugly
kludge well beyond some immediate project? (It's a rhetorical question).

Separately, there are a lot of folks coming to this NG who don't have a
strong technical background and are looking for ways to get their work
done. They will read other posts and get ideas for how to accomplish
various programming tasks. They simply aren't capable of decyphering - in
the moment - what is a kludge and what isn't. So it is a very good thing
that we have folks like Juan and the other more experienced developers -
MVP or not - who point out the fact that some things are bad to do. It
isn't that Juan or these more experienced developers *need* for someone to
ask them to point out kludges. They can't help it - being (1) more
knowledgeable and (2) wanting to promote best practices and standards - or
at least help those less knowledgeable to understand what the implications
of their actions are. It is obvious that many newer developers *don't*
always understand the implications of their actions - so it is helpful for
someone to help them to think it through. And for free!

It's clear that Jim has a question related to the NG.

Nobody questioned that.

It's also clear that he has no choice in doing what he's been asked.

I didn't know he was posting from Gitmo
Not everyone has the kind of employee/employer relationship where they
can just tell the powers that be that their assignment is ridiculous.

True - but that doesn't mean that we should help him to do accomplish a
kludge
I'd say keeping your boss happy is a problem worth solving.

At all costs?


-Frankie




Scott M. said:
I couldn't help but jump into the fray here. That last comment is
ludicrous, since no one has asked you to be a moderator for this (or any
other newsgroup). People are free to post any question they want (even
if it is ludicrous) - it's not now, or ever, been YOUR job to
editorialize the validity of those posts.

It's clear that Jim has a question related to the NG. It's also clear
that he has no choice in doing what he's been asked. Not everyone has
the kind of employee/employer relationship where they can just tell the
powers that be that their assignment is ridiculous. I'd say keeping your
boss happy is a problem worth solving.
 
F

Frankie

RE:
RE:

<< his subsequent replies have just been antagonistic . >>

There is absolutely nothing in Juan's replies that have been antagonistic.
The fact that the OP got his panties in a bunch doesn't mean that is the
effect Juan was intending - and it doesn't mean that such a respons on the
part of the OP is justified.

<< and serve no purpose >>
Wrong again. Juan's replies serve many useful purposes simultaneously. For
starters, it keeps other neophytes from looking at the OP and going - "
hey - cool - I wanna do that too". At least Juan's replies give them pause.
It *could* have given the OP pause too - but he decided to become offended
or somehow put out with the fact that the merits of his bad idea were called
into question. Juans replies also serve the purpose of maintaining the
integrity or usefulness of this NG. I could keep going...

Finally, we *must* make assumptions and speculate about reality - otherwise
we'd never get through life. So pointing out that I have speculated is, of
course, accurate. Of course your posts here necessarily imply a whole lot of
speculation on your part too. Nothing wrong with speculating. It's gotta be
done!

Okay, I've gotta get back to the game. The Colts are winning...

Later (oh, and let's meet at Starbucks and discuss the meaning of life over
a Latte! Mabe the OP's original offer still stands).

-Frankie






Scott M. said:
The only thing in your post that is worth replying to is that no one said
Juan couldn't make his thoughts known. But, after doing so the first
time, his subsequent replies have just been antagonistic and serve no
purpose. The rest of your diatribe is purely speculation based on nothing.


Frankie said:
Scott:

RE:
Actually, part of what I do is keep this newsgroup focused on worthhile
problems.

I couldn't help but jump into the fray here. That last comment is
ludicrous, since no one has asked you to be a moderator for this (or any
other newsgroup).

Actually, I did. Last Thrusday I asked Juan to be a moderator of this
group and other newsgroups - and he is doing a great job!

Seriously, though, it is entirely likely that the OP here has *not* been
asked by his stupid boss to do this. Odds are he is just trying to use a
hammer, possibly gold in color, where a screw driver would be far better.
But even if I'm wrong about that and the gentleman posting the OP here is
really telling the honest truth, that truth would tell us that he is a
world-class brown-noser and will do whatever his boss asks - just to keep
a job in a company that doesn't listen to reason. It's even worse than
that. Apparently this obvious kludge is going to be presented in a class
to educate people who - by definition [of being a student in the class] -
wouldn't know any better. So it's not like this kludge isn't going to go
anywhere. Why should we help a world-class brown noser perpetuate an ugly
kludge well beyond some immediate project? (It's a rhetorical question).

Separately, there are a lot of folks coming to this NG who don't have a
strong technical background and are looking for ways to get their work
done. They will read other posts and get ideas for how to accomplish
various programming tasks. They simply aren't capable of decyphering - in
the moment - what is a kludge and what isn't. So it is a very good thing
that we have folks like Juan and the other more experienced developers -
MVP or not - who point out the fact that some things are bad to do. It
isn't that Juan or these more experienced developers *need* for someone
to ask them to point out kludges. They can't help it - being (1) more
knowledgeable and (2) wanting to promote best practices and standards -
or at least help those less knowledgeable to understand what the
implications of their actions are. It is obvious that many newer
developers *don't* always understand the implications of their actions -
so it is helpful for someone to help them to think it through. And for
free!

It's clear that Jim has a question related to the NG.

Nobody questioned that.

It's also clear that he has no choice in doing what he's been asked.

I didn't know he was posting from Gitmo
Not everyone has the kind of employee/employer relationship where they
can just tell the powers that be that their assignment is ridiculous.

True - but that doesn't mean that we should help him to do accomplish a
kludge
I'd say keeping your boss happy is a problem worth solving.

At all costs?


-Frankie




Scott M. said:
Actually, part of what I do is keep this newsgroup focused on worthhile
problems.

I couldn't help but jump into the fray here. That last comment is
ludicrous, since no one has asked you to be a moderator for this (or any
other newsgroup). People are free to post any question they want (even
if it is ludicrous) - it's not now, or ever, been YOUR job to
editorialize the validity of those posts.

It's clear that Jim has a question related to the NG. It's also clear
that he has no choice in doing what he's been asked. Not everyone has
the kind of employee/employer relationship where they can just tell the
powers that be that their assignment is ridiculous. I'd say keeping
your boss happy is a problem worth solving.
 
S

Scott M.

I'm not looking for an explanation to the problem. I'm simply saying that
you've made your point known and there's no point in proceeding with it.
 
J

jim

james said:
I don't think that the WebBrowser control in VB.Net 2005 would act that
way. Nor would Internet Explorer
popup the Request to Install ActiveX control dialog like it would if you
where going to a website that had
content that required a particular control to be installed ( like Flash
Player or something similar) to view that
content. For one thing, if you are running Internet Explorer, there is
already an instance of the control there.
At the most, it would just pop up another instance of Internet Explorer
and display the content.
And I don't think you could get FireFox to do it either.
At least, this is what I am getting from your statements.
If I have mis-understood your question, I am sorry. But, that is what it
appears to me you are trying to do.
james

There is an activex control for Firefox that could be used, but my boss
specifically wants an IE activeX control hosted on a webpage that will be
viewed with IE.

This example of nesting controls seems to amuse him, and no matter how I
argue that I can have another activex control on a web page rather quickly
he still wants his IE activex control on a webpage to view it in IE.

jim
 
R

Registered User

There is an activex control for Firefox that could be used, but my boss
specifically wants an IE activeX control hosted on a webpage that will be
viewed with IE.

This example of nesting controls seems to amuse him, and no matter how I
argue that I can have another activex control on a web page rather quickly
he still wants his IE activex control on a webpage to view it in IE.
What is meant by "his ActiveX control"?

By itself the AxSHDocVw.AxWebBrowser control isn't especially useful.
The control needs a container that can expose a UI and
programmatically interact with the control's properties, methods and
events. Essentially this would be an ActiveX web browser control which
contains an embedded AxSHDocVw.AxWebBrowser control. Now embed the
container in the webpage.

Although I have done a lot of embedded IE in Java, Delphi, & C# I have
never considered embedding a browser in a webpage. As such my
suggestion is just a thought experiment that you might consider
pursuing.

regards
A.G.
 
J

jim

Registered User said:
What is meant by "his ActiveX control"?

Just a figure of speech. It's the shdocvw.dll control that ships with IE
that he wants implemented in a webpage.
By itself the AxSHDocVw.AxWebBrowser control isn't especially useful.
The control needs a container that can expose a UI and
programmatically interact with the control's properties, methods and
events. Essentially this would be an ActiveX web browser control which
contains an embedded AxSHDocVw.AxWebBrowser control. Now embed the
container in the webpage.

That's a thought. Although (through much bitching an gnashing of teeth) I
have found that he wanted to use the IE control because it would not have to
be registered or installed on most Windows PCs (depending on how updated the
user's PC is of course).

As far as interacting with the webcontrol in the webpage, Peter Bromberg [C#
MVP] said "the native COM IE Web Control was never designed to be hosted in
a web page via the <object clsid=.... tag arrangement. You would not be able
to sink any events and that's just for starters. Check here for details:
http://support.microsoft.com/kb/q183048/".

So, this whole thing may be futile. I really don't understand the thinking
behind making the webbrowser control events and procedures NOT accessible
from within a webpage. If Microsoft is known for anything, it's recursion.
Just look at most of the objects in VB6 and VB.Net. They are almost all
recursed in one way or another.

The link Peter gave was for the IE4 webbrowser control. I had really hoped
that had changed by IE7, but Peter also gave a code sample in a second post
that I tested out and I got an error message in IE7 (fully patched) that
said "Internet Explorer has blocked thsi site from using an ActiveX control
in an unsafe manner. As a result, this page may not display correctly."
This message and behavior is a result of new security measures in IE7.

That alone will doom this task as we cannot really expect all users to lower
their security settings (or even know how to) just to run this "educational
webpage".

So, I have a couple of lattes to hand out. 2 to Peter and 1 to you for your
help also. Where is the nearest Starbucks? I'll phone in your orders.
Although I have done a lot of embedded IE in Java, Delphi, & C# I have
never considered embedding a browser in a webpage. As such my
suggestion is just a thought experiment that you might consider
pursuing.

Thank you for your suggestion. I also recommended an entirely different
path. I recommended wrapping an IE application using Thinstall. That would
also get rid of any requirements to install anything on the end user's PC.
The end users would have to run the executable (just over 2.2MB) but there
is no install or registering of components (even 3rd party components)
required.

Seems the objection to Thinstall is two-fold. (1) Price. Thinstall starts
at $4,995 PER APPLICATION and before client licensing is considered. (2)
Thinstall apps require lots more bandwidth than simply embedding a control
that is already on most Windows PCs.

I keep poking him for the real reason behind holding so steadfastly to a
difficult solution to a simple problem of teaching about activex controls,
but he's not cracking yet. It *has* to be something more than he's telling
me.

Thanks for your suggestions!

jim
 
J

jim

Peter,

Thanks so much for the code.

I tested your code in an HTML page via IE7 (fully patched) and got a message
that said "Internet Explorer has blocked this site from using an ActiveX
control in an unsafe manner. As a result, this page may not display
correctly." This message and behavior is a result of new security measures
in IE7.

That alone will doom this task as we cannot really expect all users to lower
their security settings (or even know how to) just to run this "educational
webpage".

So, I have a couple of lattes to hand out. 2 to you and 1 to A.G. for his
help also. Where is the nearest Starbucks? I'll phone in your orders.

jim
 
J

jim

As a test, I set all advanced IE options to Eabled or Prompt for the Trusted
Sites zone and added my test domain to this zone.

The page appears as a blank page. No IE control was evident on the page.
So I changed the background color of the page to dark blue - then I could
see the control and some code on the page.

It seems that the line {WebBrowser1.Navigate "<WWLINK TYPE="GENERIC"
VALUE="http://testserver1"">http://testserver1"</WWLINK>} stops at the {:}
in the link and displays {http://www.microsoft.com" end sub Sub
document_onmousedown() WebBrowser1.Navigate "http://testserver1" end
sub -->} on the top of the webpage.

Even if I get past this problem though, there is still no way to interact
with the control, is that right?

jim


jim said:
Peter,

Thanks so much for the code.

I tested your code in an HTML page via IE7 (fully patched) and got a
message that said "Internet Explorer has blocked this site from using an
ActiveX control in an unsafe manner. As a result, this page may not
display correctly." This message and behavior is a result of new security
measures in IE7.

That alone will doom this task as we cannot really expect all users to
lower their security settings (or even know how to) just to run this
"educational webpage".

So, I have a couple of lattes to hand out. 2 to you and 1 to A.G. for his
help also. Where is the nearest Starbucks? I'll phone in your orders.

jim


"Peter Bromberg [C# MVP]" <[email protected]>
wrote in message
P.S. -
If you actually want to try it, here is some sample code:

<HTML>
<HEAD>
<SCRIPT LANGUAGE="VBScript>
<!--
Sub window_onload()

WebBrowser1.Navigate"

<WWLINK TYPE="GENERIC"
VALUE="http://www.microsoft.com"">http://www.microsoft.com"</WWLINK>

end sub
Sub document_onmousedown()
WebBrowser1.Navigate "<WWLINK TYPE="GENERIC"
VALUE="http://testserver1"">http://testserver1"</WWLINK>
end sub
-->
</SCRIPT>
<TITLE>WebBrowser Control in HTML</TITLE>
</HEAD>
<BODY>
<OBJECT ID="WebBrowser1" WIDTH=332 HEIGHT=276
CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">
<PARAM NAME="ExtentX" VALUE="8784">
<PARAM NAME="ExtentY" VALUE="7303">
<PARAM NAME="ViewMode" VALUE="1">
<PARAM NAME="Offline" VALUE="0">
<PARAM NAME="Silent" VALUE="0">
<PARAM NAME="RegisterAsBrowser" VALUE="0">
<PARAM NAME="RegisterAsDropTarget" VALUE="0">
<PARAM NAME="AutoArrange" VALUE="1">
<PARAM NAME="NoClientEdge" VALUE="1">
<PARAM NAME="AlignLeft" VALUE="0">
</OBJECT>
</BODY>
</HTML>

-- You will find very quickly that not only can you not sink any events,
but
that the newer browser security restrictions on cross-frame scripting
make it
impossible to even use. Convince whoever is making this ludicrous demand
of
these facts, and use an IFRAME.
Peter
--
Recursion: see Recursion
site: http://www.eggheadcafe.com
unBlog: http://petesbloggerama.blogspot.com
BlogMetaFinder: http://www.blogmetafinder.com
 
G

Guest

Hello Jim ,


In the VB6 days this would have been a easy task , as you could then write
activex controls thal loaded in web pages and you could simply throw a
webbrowser control on one of them and control it through VB code of the
actuall parent VB control .

However due to secuirity restrictions , this is nowadays almost impossible
to acomplish in the real world ( apps deployed to end users , even with VB6 )

However in a managed environment this would still be an easy task in VB6

with .Net AFAIK there is no true substitute for this VB6 functionality , i
guess the closest you can come is trying to initiate and controling the
control through Jscript

So maybe your boss is giving you this task because he has Pre .Net
knowledge where this would have been an easy task .

In the meanwhile i wil investigate for you if i can get it to work , as i
have some thorough experience with the webbrowser control ( VB6 and the ax
control in VB.Net )

regards

Michel Posseth
 
J

jim

I'll take any help I can get.

Thanks!

jim


Michel Posseth said:
Hello Jim ,


In the VB6 days this would have been a easy task , as you could then write
activex controls thal loaded in web pages and you could simply throw a
webbrowser control on one of them and control it through VB code of the
actuall parent VB control .

However due to secuirity restrictions , this is nowadays almost impossible
to acomplish in the real world ( apps deployed to end users , even with
VB6 )

However in a managed environment this would still be an easy task in VB6

with .Net AFAIK there is no true substitute for this VB6 functionality ,
i
guess the closest you can come is trying to initiate and controling the
control through Jscript

So maybe your boss is giving you this task because he has Pre .Net
knowledge where this would have been an easy task .

In the meanwhile i wil investigate for you if i can get it to work , as i
have some thorough experience with the webbrowser control ( VB6 and the
ax
control in VB.Net )

regards

Michel Posseth
 
G

Guest

After reading the hole post the following

1. the security popups would also occur with a custom VB6 activex control
you even needed to sign the cab files to show a popup with green markers
then it still required the explicit confirmation of the user ( this was
already so with IE 4 )

2. the security in IE has only gone stricter ,

3. have you considered builing a smart application if i read your last post
and understaqnd your requirments correctly , a .Net smart application would
be a perfect substitute

# Concept #

http://en.wikipedia.org/wiki/Smart_client

user navigates to youw web / intranet page with a through explanation what
wil happen , clicks the install link , the framework will install all
necesary components automaticly and will launch the application, the
application is actually delivered to the client throuh IE



Hope to have given you some ideas

regards

Michel


jim said:
Registered User said:
What is meant by "his ActiveX control"?

Just a figure of speech. It's the shdocvw.dll control that ships with IE
that he wants implemented in a webpage.
By itself the AxSHDocVw.AxWebBrowser control isn't especially useful.
The control needs a container that can expose a UI and
programmatically interact with the control's properties, methods and
events. Essentially this would be an ActiveX web browser control which
contains an embedded AxSHDocVw.AxWebBrowser control. Now embed the
container in the webpage.

That's a thought. Although (through much bitching an gnashing of teeth) I
have found that he wanted to use the IE control because it would not have to
be registered or installed on most Windows PCs (depending on how updated the
user's PC is of course).

As far as interacting with the webcontrol in the webpage, Peter Bromberg [C#
MVP] said "the native COM IE Web Control was never designed to be hosted in
a web page via the <object clsid=.... tag arrangement. You would not be able
to sink any events and that's just for starters. Check here for details:
http://support.microsoft.com/kb/q183048/".

So, this whole thing may be futile. I really don't understand the thinking
behind making the webbrowser control events and procedures NOT accessible
from within a webpage. If Microsoft is known for anything, it's recursion.
Just look at most of the objects in VB6 and VB.Net. They are almost all
recursed in one way or another.

The link Peter gave was for the IE4 webbrowser control. I had really hoped
that had changed by IE7, but Peter also gave a code sample in a second post
that I tested out and I got an error message in IE7 (fully patched) that
said "Internet Explorer has blocked thsi site from using an ActiveX control
in an unsafe manner. As a result, this page may not display correctly."
This message and behavior is a result of new security measures in IE7.

That alone will doom this task as we cannot really expect all users to lower
their security settings (or even know how to) just to run this "educational
webpage".

So, I have a couple of lattes to hand out. 2 to Peter and 1 to you for your
help also. Where is the nearest Starbucks? I'll phone in your orders.
Although I have done a lot of embedded IE in Java, Delphi, & C# I have
never considered embedding a browser in a webpage. As such my
suggestion is just a thought experiment that you might consider
pursuing.

Thank you for your suggestion. I also recommended an entirely different
path. I recommended wrapping an IE application using Thinstall. That would
also get rid of any requirements to install anything on the end user's PC.
The end users would have to run the executable (just over 2.2MB) but there
is no install or registering of components (even 3rd party components)
required.

Seems the objection to Thinstall is two-fold. (1) Price. Thinstall starts
at $4,995 PER APPLICATION and before client licensing is considered. (2)
Thinstall apps require lots more bandwidth than simply embedding a control
that is already on most Windows PCs.

I keep poking him for the real reason behind holding so steadfastly to a
difficult solution to a simple problem of teaching about activex controls,
but he's not cracking yet. It *has* to be something more than he's telling
me.

Thanks for your suggestions!

jim
 
G

Guest

hmm ...


That Link Cor provided looks verry promissing ,,, if you can throw a listbox
, puzzle on a webform and display this on a web page.

why would a webbrowser control fail ?? ...

i have just tested the example ( Rich.exe downloadable from the link Cor
provided ) and installed the files to my IIS directory after calling the
file controls.html it just shows the 2 listboxes without displaying anny
warning at all

so i tested this from a remote client ( other computer on my LAN ) and again
it shows the listboxes without anny warning at all

i understood from the docu that this is functioning because it runs in an
isolated storage .

so i guess this is your solution , just throw a webbrowser control on the
parent control and you have forfilled your task ( the example is C# but it
is verry simple and with the link information it should be an easy task )

Seems like your boss is not such an idiot as some people thought :)


hth

Michel







Michel Posseth said:
After reading the hole post the following

1. the security popups would also occur with a custom VB6 activex control
you even needed to sign the cab files to show a popup with green markers
then it still required the explicit confirmation of the user ( this was
already so with IE 4 )

2. the security in IE has only gone stricter ,

3. have you considered builing a smart application if i read your last post
and understaqnd your requirments correctly , a .Net smart application would
be a perfect substitute

# Concept #

http://en.wikipedia.org/wiki/Smart_client

user navigates to youw web / intranet page with a through explanation what
wil happen , clicks the install link , the framework will install all
necesary components automaticly and will launch the application, the
application is actually delivered to the client throuh IE



Hope to have given you some ideas

regards

Michel


jim said:
Registered User said:
There is an activex control for Firefox that could be used, but my boss
specifically wants an IE activeX control hosted on a webpage that will be
viewed with IE.

This example of nesting controls seems to amuse him, and no matter how I
argue that I can have another activex control on a web page rather quickly
he still wants his IE activex control on a webpage to view it in IE.

What is meant by "his ActiveX control"?

Just a figure of speech. It's the shdocvw.dll control that ships with IE
that he wants implemented in a webpage.
By itself the AxSHDocVw.AxWebBrowser control isn't especially useful.
The control needs a container that can expose a UI and
programmatically interact with the control's properties, methods and
events. Essentially this would be an ActiveX web browser control which
contains an embedded AxSHDocVw.AxWebBrowser control. Now embed the
container in the webpage.

That's a thought. Although (through much bitching an gnashing of teeth) I
have found that he wanted to use the IE control because it would not have to
be registered or installed on most Windows PCs (depending on how updated the
user's PC is of course).

As far as interacting with the webcontrol in the webpage, Peter Bromberg [C#
MVP] said "the native COM IE Web Control was never designed to be hosted in
a web page via the <object clsid=.... tag arrangement. You would not be able
to sink any events and that's just for starters. Check here for details:
http://support.microsoft.com/kb/q183048/".

So, this whole thing may be futile. I really don't understand the thinking
behind making the webbrowser control events and procedures NOT accessible
from within a webpage. If Microsoft is known for anything, it's recursion.
Just look at most of the objects in VB6 and VB.Net. They are almost all
recursed in one way or another.

The link Peter gave was for the IE4 webbrowser control. I had really hoped
that had changed by IE7, but Peter also gave a code sample in a second post
that I tested out and I got an error message in IE7 (fully patched) that
said "Internet Explorer has blocked thsi site from using an ActiveX control
in an unsafe manner. As a result, this page may not display correctly."
This message and behavior is a result of new security measures in IE7.

That alone will doom this task as we cannot really expect all users to lower
their security settings (or even know how to) just to run this "educational
webpage".

So, I have a couple of lattes to hand out. 2 to Peter and 1 to you for your
help also. Where is the nearest Starbucks? I'll phone in your orders.
Although I have done a lot of embedded IE in Java, Delphi, & C# I have
never considered embedding a browser in a webpage. As such my
suggestion is just a thought experiment that you might consider
pursuing.

Thank you for your suggestion. I also recommended an entirely different
path. I recommended wrapping an IE application using Thinstall. That would
also get rid of any requirements to install anything on the end user's PC.
The end users would have to run the executable (just over 2.2MB) but there
is no install or registering of components (even 3rd party components)
required.

Seems the objection to Thinstall is two-fold. (1) Price. Thinstall starts
at $4,995 PER APPLICATION and before client licensing is considered. (2)
Thinstall apps require lots more bandwidth than simply embedding a control
that is already on most Windows PCs.

I keep poking him for the real reason behind holding so steadfastly to a
difficult solution to a simple problem of teaching about activex controls,
but he's not cracking yet. It *has* to be something more than he's telling
me.

Thanks for your suggestions!

jim
 
J

jim

The more I poke at the shriveled grey mass he affectionately calls his
brain, the more specific he seems to get (which is expected of all end
users/project managers I suppose).

One of his (unspoken) goals was to be able to load this page without and
installs (hence the use of the IE control) and avoid any problems with PCs
that are locked down and may not allow the end users that are viewing the
educational material the ability to install anything locally.

I have looked at the link that you provided (thanks for that) and I have
googled some results for .net smart client.

It seems that the major hold up in using a smart client for this project is
the requirement for .Net 2.0 to be pre-installed on the clients. As we will
not have access to the PCs to make those changes for all that may view the
web pages, we cannot make sure that this is the case. Additionaly, any user
that wants to use click once apps and tries to install the .Net 2.0
framework must have admin privileges and we were trying to keep this in the
browser to avoid installation issues like that.

Your suggestion was a good avenue to pursue and brings up a couple of
thoughts that I had on the subject of click once deplyoment.

1) It is quite obvious that the .Net framework is a key component of
Microsoft's future plans for the Windows operating systems and applications
written for them. So, why is the .Net framework an elective download? Why
not push out such an important component of the overall Windows platform?
Just doesn't make sense to me.

2) Why are click once apps' security settings dependent upon the location
from which they are launched? Wouldn't it be better to alert a user that a
particular app (no matter where it is launched from) is requesting (or
requiring) specific permissions (like read/write access to program
directories or the ability to edit the registry) and let the user make the
call to (a) allow only certain behaviors, (b) trust the application or (c)
trust the location and all apps lainched from it? I certainly think it
would make click once deployment a more viable alternative for truly
powerful desktop applications.

3) Thinstall is an application that can wrap your application into a single
executable. It encapsulates all of the .Net framework needed to run your
app - so the user does not have to have .Net installed. It also
incorporates all COM components and DLLs into the EXE and requires NO
REGISTRATION of these components to work. Thinstall even runs your app in a
virtual sandbox and can obfuscate the whole thing for you. I can't, for the
life of me, figure out why Microsoft has not incorporated this technology
into the build and deployment cycle of .Net applications.

Thanks again for your input. I love the idea of click once deployment, but
with competing technologies like Thinstall out there - click once is years
behind in application deployment technology.

jim

Michel Posseth said:
After reading the hole post the following

1. the security popups would also occur with a custom VB6 activex control
you even needed to sign the cab files to show a popup with green
markers
then it still required the explicit confirmation of the user ( this was
already so with IE 4 )

2. the security in IE has only gone stricter ,

3. have you considered builing a smart application if i read your last
post
and understaqnd your requirments correctly , a .Net smart application
would
be a perfect substitute

# Concept #

http://en.wikipedia.org/wiki/Smart_client

user navigates to youw web / intranet page with a through explanation
what
wil happen , clicks the install link , the framework will install all
necesary components automaticly and will launch the application, the
application is actually delivered to the client throuh IE



Hope to have given you some ideas

regards

Michel


jim said:
Registered User said:
There is an activex control for Firefox that could be used, but my boss
specifically wants an IE activeX control hosted on a webpage that will
be
viewed with IE.

This example of nesting controls seems to amuse him, and no matter how
I
argue that I can have another activex control on a web page rather
quickly
he still wants his IE activex control on a webpage to view it in IE.

What is meant by "his ActiveX control"?

Just a figure of speech. It's the shdocvw.dll control that ships with IE
that he wants implemented in a webpage.
By itself the AxSHDocVw.AxWebBrowser control isn't especially useful.
The control needs a container that can expose a UI and
programmatically interact with the control's properties, methods and
events. Essentially this would be an ActiveX web browser control which
contains an embedded AxSHDocVw.AxWebBrowser control. Now embed the
container in the webpage.

That's a thought. Although (through much bitching an gnashing of teeth)
I
have found that he wanted to use the IE control because it would not have
to
be registered or installed on most Windows PCs (depending on how updated
the
user's PC is of course).

As far as interacting with the webcontrol in the webpage, Peter Bromberg
[C#
MVP] said "the native COM IE Web Control was never designed to be hosted
in
a web page via the <object clsid=.... tag arrangement. You would not be
able
to sink any events and that's just for starters. Check here for details:
http://support.microsoft.com/kb/q183048/".

So, this whole thing may be futile. I really don't understand the
thinking
behind making the webbrowser control events and procedures NOT accessible
from within a webpage. If Microsoft is known for anything, it's
recursion.
Just look at most of the objects in VB6 and VB.Net. They are almost all
recursed in one way or another.

The link Peter gave was for the IE4 webbrowser control. I had really
hoped
that had changed by IE7, but Peter also gave a code sample in a second
post
that I tested out and I got an error message in IE7 (fully patched) that
said "Internet Explorer has blocked thsi site from using an ActiveX
control
in an unsafe manner. As a result, this page may not display correctly."
This message and behavior is a result of new security measures in IE7.

That alone will doom this task as we cannot really expect all users to
lower
their security settings (or even know how to) just to run this
"educational
webpage".

So, I have a couple of lattes to hand out. 2 to Peter and 1 to you for
your
help also. Where is the nearest Starbucks? I'll phone in your orders.
Although I have done a lot of embedded IE in Java, Delphi, & C# I have
never considered embedding a browser in a webpage. As such my
suggestion is just a thought experiment that you might consider
pursuing.

Thank you for your suggestion. I also recommended an entirely different
path. I recommended wrapping an IE application using Thinstall. That
would
also get rid of any requirements to install anything on the end user's
PC.
The end users would have to run the executable (just over 2.2MB) but
there
is no install or registering of components (even 3rd party components)
required.

Seems the objection to Thinstall is two-fold. (1) Price. Thinstall
starts
at $4,995 PER APPLICATION and before client licensing is considered. (2)
Thinstall apps require lots more bandwidth than simply embedding a
control
that is already on most Windows PCs.

I keep poking him for the real reason behind holding so steadfastly to a
difficult solution to a simple problem of teaching about activex
controls,
but he's not cracking yet. It *has* to be something more than he's
telling
me.

Thanks for your suggestions!

jim
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top