Solved

Activex Document Server & Internet Explorer

Posted on 2012-03-12
3
350 Views
Last Modified: 2012-08-14
Dear friends,

I'm working on activex document server that is used to display documents in Internet Explorer (an user enters URL address of a specified document in IE address bar, document is downloaded and displayed in Internet Explorer).

I would like to create some type of progress bar in activex document server that displays information about document's download progress in Internet Explorer.
Is there any COM interface that can be used to obtain these information from Internet Explorer?

Thanks in advance for any suggestions.

tomas
0
Comment
Question by:tomas_v
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 7

Expert Comment

by:tampnic
ID: 37719169
I don't know how your application works but I recently wrote a download system  in php (download a file by specifying a key code in the querystring of the URL, all files on the webserver in a directory above httpdocs to prevent direct downloads).

That php code looks up the file associated with the provided key, sets up the http headers, mime-type etc, then sends the file data in chunks and I can track how much data has been sent in the server side code - I could notionally send that data to a client side object during the download if I wanted. But why bother - most browsers I know already monitor how much data has been received for a download and show progress automatically.

What I'm trying to get at is - it might be easier for you to monitor the download in server code while the server gives data to the client; create a mechanism to send progress messages to a bespoke client ActiveX object. Why isn't the inbuilt IE download progress bar sufficient for the users, its a standard part of the IE user interface?

Cheers,
  Chris
0
 

Accepted Solution

by:
tomas_v earned 0 total points
ID: 37840172
Hi Chris,

thank you for your advice.
I've found solution for my problem. I had to implement support for IPersistMoniker interface in my Activex document server.

Internet Explorer performs a QueryInterface on the server's document object for IPersistMoniker. If IPersistMoniker is supported, Internet Explorer calls the IPersistMoniker::Load method with the moniker it used to begin downloading the data file.

Then I can skip the normal binding to storage and download the data in a worker thread and display the progress.

http://support.microsoft.com/kb/178059
0
 

Author Closing Comment

by:tomas_v
ID: 37859678
Found solution
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is a continuation of the C/C++ Visual Studio Express debugger series. Part 1 provided a quick start guide in using the debugger. Part 2 focused on additional topics in breakpoints. As your assignments become a little more …
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…
The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.

695 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question