Hyperlinks to .htm file with http parameters

  • Thread starter Thread starter Jeff Malotte
  • Start date Start date
J

Jeff Malotte

Hello,

I'm trying to create hyperlinks in my slide that launch an .htm page with
various parameters.

For example, this works fine:
...\eReference\default.htm

however, this does not:
...\eReference\default.htm?Lang=en-us?CourseID=NETRES_introasp1?NodeID=INTROA
SP_ITEM20

Adding the trailing parameters to the URL results in an error messsage:
"Cannot open the specfied file". My .htm fucntionally requires the later
form of URL. Any suggestions on how I can get this to
work? Maybe a different approach would be better?


P.S. There also seems to be some limit to the length you can make the URL.
Is there anyways around that?


Thanks,

Jeff
 
I'm trying to create hyperlinks in my slide that launch an .htm page with
various parameters.

For example, this works fine:
...\eReference\default.htm

however, this does not:
...\eReference\default.htm?Lang=en-us?CourseID=NETRES_introasp1?NodeID=INTROA
SP_ITEM20

Adding the trailing parameters to the URL results in an error messsage:
"Cannot open the specfied file". My .htm fucntionally requires the later
form of URL. Any suggestions on how I can get this to
work? Maybe a different approach would be better?

What version of PPT, how are you inserting the hyperlink and are you playing
the result back from PPT, a viewer or saving it to HTML and viewing the result
in a browser?
P.S. There also seems to be some limit to the length you can make the URL.
Is there anyways around that?

I haven't run across this but it's possible; what specific problem have you
run into with link length?

--
Steve Rindsberg, PPT MVP
PPT FAQ: www.pptfaq.com
PPTools: www.pptools.com
================================================
Featured Presenter, PowerPoint Live 2004
October 10-13, San Diego, CA www.PowerPointLive.com
================================================
 
I'm using PPT 2003 and am inserting my links by right clicking with in the
slide, choosing "hyperlink" and pasting into the browse dialog the URL.
Alternatively I've tried right clicking a previously created link, choosing
"edit hyperlink" or "Action Settings". I'm playing the result from PPT.

Thanks for the help Steve!
 
I'm using PPT 2003 and am inserting my links by right clicking with in the
slide, choosing "hyperlink" and pasting into the browse dialog the URL.
Alternatively I've tried right clicking a previously created link, choosing
"edit hyperlink" or "Action Settings". I'm playing the result from PPT.

Thanks - I'm able to duplicate it. Even one ?param=whatever makes it fail, I
see. It's getting confused into thinking this is a link to a file rather than
to a URL, and since it can't find a file called

default.htm?Lang=en-us?CourseID=NETRES_introasp1?NodeID=INTRO

you get the "Can't find this file" error msg.

But if you hand it a full
http://whatever/wherever/whenever/file.htm?param=whosis?param=whatsis?param=etc

type of hyperlink, it works and appears to pass the parameters along as well.

And I'd think you'd have to do something along those lines anyhow; you'll need
to pass links with params to a web server for them to be of any use, no?
Thanks for the help Steve!

--
Steve Rindsberg, PPT MVP
PPT FAQ: www.pptfaq.com
PPTools: www.pptools.com
================================================
Featured Presenter, PowerPoint Live 2004
October 10-13, San Diego, CA www.PowerPointLive.com
================================================
 
Unfortunately, no. This "htm/javascript application" will reside on a CD
with a PPT file. The "application" hosts a training course. We want to
have links in the PPT slide deck to specific topics/nodes withing this
training course. Those parameters we pass in describe the topic/nodes.
While this application will run in IIS as well, that's not the deployment
scenario we need a solution for. We really need to be able to use relative
links so the URLs are generic enough to be valid on any machine.

Any ideas on how to do that?
 
Unfortunately, no. This "htm/javascript application" will reside on a CD
with a PPT file. The "application" hosts a training course. We want to
have links in the PPT slide deck to specific topics/nodes withing this
training course. Those parameters we pass in describe the topic/nodes.
While this application will run in IIS as well, that's not the deployment
scenario we need a solution for. We really need to be able to use relative
links so the URLs are generic enough to be valid on any machine.

Any ideas on how to do that?

Will this need to play from within the old PPT97 viewer, the newer 2003 Viewer
(where it may not work ... links to external files are a no-no) or from within
PPT itself, and if PPT, can you assume that macro security will be medium or
less? There might be a VBA solution.

Or can the PPT slide set be replaced with a set of HTML pages?

--
Steve Rindsberg, PPT MVP
PPT FAQ: www.pptfaq.com
PPTools: www.pptools.com
================================================
Featured Presenter, PowerPoint Live 2004
October 10-13, San Diego, CA www.PowerPointLive.com
================================================
 
For now, we require PPT XP though we'll be expanding to use 2003 in the
future. We have no need to support '97. Unfortunately exporting to .html
isn't an option as we need to be able to play within
PPT. Asking users to adjust their security settings to allow for macros
(medium or low) is acceptable though!

I've never dealt with VBA so I'm not sure what to do there to get started.
I have coding experience so that shouldn't be a problem. I mostly don't
have time to learn more than I need to to get this done. (I was mistakenly
expecting this to "just work". Any further help you could provide by
pointing me in the right direction on that front would be much appreciated.


Thanks,

Jeff


Steve Rindsberg said:
Unfortunately, no. This "htm/javascript application" will reside on a CD
with a PPT file. The "application" hosts a training course. We want to
have links in the PPT slide deck to specific topics/nodes withing this
training course. Those parameters we pass in describe the topic/nodes.
While this application will run in IIS as well, that's not the deployment
scenario we need a solution for. We really need to be able to use relative
links so the URLs are generic enough to be valid on any machine.

Any ideas on how to do that?

Will this need to play from within the old PPT97 viewer, the newer 2003 Viewer
(where it may not work ... links to external files are a no-no) or from within
PPT itself, and if PPT, can you assume that macro security will be medium or
less? There might be a VBA solution.

Or can the PPT slide set be replaced with a set of HTML pages?
 
If you've done any VB, VBA shouldn't be too big a shock.

I'm thinking along the lines of setting up the linked shapes so that when
clicked, they shellexecute the url you need to pass off. That will launch the
default browser and whatever happens from there is up to it, of course.

ShellExecute is more or less the programmatic equivalent of doubleclicking a
file, by the way.


For now, we require PPT XP though we'll be expanding to use 2003 in the
future. We have no need to support '97. Unfortunately exporting to .html
isn't an option as we need to be able to play within
PPT. Asking users to adjust their security settings to allow for macros
(medium or low) is acceptable though!

I've never dealt with VBA so I'm not sure what to do there to get started.
I have coding experience so that shouldn't be a problem. I mostly don't
have time to learn more than I need to to get this done. (I was mistakenly
expecting this to "just work". Any further help you could provide by
pointing me in the right direction on that front would be much appreciated.

Thanks,

Jeff

Steve Rindsberg said:
Unfortunately, no. This "htm/javascript application" will reside on a CD
with a PPT file. The "application" hosts a training course. We want to
have links in the PPT slide deck to specific topics/nodes withing this
training course. Those parameters we pass in describe the topic/nodes.
While this application will run in IIS as well, that's not the deployment
scenario we need a solution for. We really need to be able to use relative
links so the URLs are generic enough to be valid on any machine.

Any ideas on how to do that?

Will this need to play from within the old PPT97 viewer, the newer 2003 Viewer
(where it may not work ... links to external files are a no-no) or from within
PPT itself, and if PPT, can you assume that macro security will be medium or
less? There might be a VBA solution.

Or can the PPT slide set be replaced with a set of HTML pages?

--
Steve Rindsberg, PPT MVP
PPT FAQ: www.pptfaq.com
PPTools: www.pptools.com
================================================
Featured Presenter, PowerPoint Live 2004
October 10-13, San Diego, CA www.PowerPointLive.com
================================================
 
Hey Jeff,

I had another idea that might work for you:

PowerPoint's treating your existing links as though they were files, so it gets
confused when it can't find a file named

somefile.htm?param=this?param=that

In fact, as a filename, that's impossible; ? characters are on the no-no list.

BUT ... try

somefile.htm#Anything?param=this?param=that

It should then parse the filename correctly and will ignore the rest; it doesn't
try to parse it, but simply passes it along to [wherever] when the link's
clicked.

The browser should ignore the named destination: Anything since it doesn't exist,
but if that worries you, you can always add

<a name="Anything">

to your target html files. It won't display in the browser.

Give it shot, let me know how it works, 'kay?

For now, we require PPT XP though we'll be expanding to use 2003 in the
future. We have no need to support '97. Unfortunately exporting to .html
isn't an option as we need to be able to play within
PPT. Asking users to adjust their security settings to allow for macros
(medium or low) is acceptable though!

I've never dealt with VBA so I'm not sure what to do there to get started.
I have coding experience so that shouldn't be a problem. I mostly don't
have time to learn more than I need to to get this done. (I was mistakenly
expecting this to "just work". Any further help you could provide by
pointing me in the right direction on that front would be much appreciated.

Thanks,

Jeff

Steve Rindsberg said:
Unfortunately, no. This "htm/javascript application" will reside on a CD
with a PPT file. The "application" hosts a training course. We want to
have links in the PPT slide deck to specific topics/nodes withing this
training course. Those parameters we pass in describe the topic/nodes.
While this application will run in IIS as well, that's not the deployment
scenario we need a solution for. We really need to be able to use relative
links so the URLs are generic enough to be valid on any machine.

Any ideas on how to do that?

Will this need to play from within the old PPT97 viewer, the newer 2003 Viewer
(where it may not work ... links to external files are a no-no) or from within
PPT itself, and if PPT, can you assume that macro security will be medium or
less? There might be a VBA solution.

Or can the PPT slide set be replaced with a set of HTML pages?

--
Steve Rindsberg, PPT MVP
PPT FAQ: www.pptfaq.com
PPTools: www.pptools.com
================================================
Featured Presenter, PowerPoint Live 2004
October 10-13, San Diego, CA www.PowerPointLive.com
================================================
 
Steve, thanks for the suggestion! Simply adding the "#" character (without
a destination) after the .htm seems to do the trick.

somefile.htm#?param=this?param=that

I can't add a destination because of how the code in our application uses
these parameters. Essentially, the code uses these parameters to build up
paths that are required to display the topics. Adding a destination is
unexpectedly appending it to one of these paths and crashing our
application. That's neither here nor there and a result of what happens
when you start tweaking something in the ways that were intended. :)

It looks like I've got a viable workaround. I've verified this working with
PPT XP and 2003 with Internet Explorer 6.

Thanks again!

Jeff Malotte

Steve Rindsberg said:
Hey Jeff,

I had another idea that might work for you:

PowerPoint's treating your existing links as though they were files, so it gets
confused when it can't find a file named

somefile.htm?param=this?param=that

In fact, as a filename, that's impossible; ? characters are on the no-no list.

BUT ... try

somefile.htm#Anything?param=this?param=that

It should then parse the filename correctly and will ignore the rest; it doesn't
try to parse it, but simply passes it along to [wherever] when the link's
clicked.

The browser should ignore the named destination: Anything since it doesn't exist,
but if that worries you, you can always add

<a name="Anything">

to your target html files. It won't display in the browser.

Give it shot, let me know how it works, 'kay?

For now, we require PPT XP though we'll be expanding to use 2003 in the
future. We have no need to support '97. Unfortunately exporting to ..html
isn't an option as we need to be able to play within
PPT. Asking users to adjust their security settings to allow for macros
(medium or low) is acceptable though!

I've never dealt with VBA so I'm not sure what to do there to get started.
I have coding experience so that shouldn't be a problem. I mostly don't
have time to learn more than I need to to get this done. (I was mistakenly
expecting this to "just work". Any further help you could provide by
pointing me in the right direction on that front would be much appreciated.

Thanks,

Jeff

 
Excellent! Just goes to show you that sometimes staying awake nights worrying
about these things DOES work. ;-)

Steve, thanks for the suggestion! Simply adding the "#" character (without
a destination) after the .htm seems to do the trick.

somefile.htm#?param=this?param=that

I can't add a destination because of how the code in our application uses
these parameters. Essentially, the code uses these parameters to build up
paths that are required to display the topics. Adding a destination is
unexpectedly appending it to one of these paths and crashing our
application. That's neither here nor there and a result of what happens
when you start tweaking something in the ways that were intended. :)

It looks like I've got a viable workaround. I've verified this working with
PPT XP and 2003 with Internet Explorer 6.

Thanks again!

Jeff Malotte

Steve Rindsberg said:
Hey Jeff,

I had another idea that might work for you:

PowerPoint's treating your existing links as though they were files, so it gets
confused when it can't find a file named

somefile.htm?param=this?param=that

In fact, as a filename, that's impossible; ? characters are on the no-no list.

BUT ... try

somefile.htm#Anything?param=this?param=that

It should then parse the filename correctly and will ignore the rest; it doesn't
try to parse it, but simply passes it along to [wherever] when the link's
clicked.

The browser should ignore the named destination: Anything since it doesn't exist,
but if that worries you, you can always add

<a name="Anything">

to your target html files. It won't display in the browser.

Give it shot, let me know how it works, 'kay?

For now, we require PPT XP though we'll be expanding to use 2003 in the
future. We have no need to support '97. Unfortunately exporting to ..html
isn't an option as we need to be able to play within
PPT. Asking users to adjust their security settings to allow for macros
(medium or low) is acceptable though!

I've never dealt with VBA so I'm not sure what to do there to get started.
I have coding experience so that shouldn't be a problem. I mostly don't
have time to learn more than I need to to get this done. (I was mistakenly
expecting this to "just work". Any further help you could provide by
pointing me in the right direction on that front would be much appreciated.

Thanks,

Jeff

--
Steve Rindsberg, PPT MVP
PPT FAQ: www.pptfaq.com
PPTools: www.pptools.com
================================================
Featured Presenter, PowerPoint Live 2004
October 10-13, San Diego, CA www.PowerPointLive.com
================================================
 
Back
Top