?
Solved

Activex Document Server & Internet Explorer

Posted on 2012-03-12
3
Medium Priority
?
362 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

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

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

Written by John Humphreys C++ Threading and the POSIX Library This article will cover the basic information that you need to know in order to make use of the POSIX threading library available for C and C++ on UNIX and most Linux systems.   [s…
Many modern programming languages support the concept of a property -- a class member that combines characteristics of both a data member and a method.  These are sometimes called "smart fields" because you can add logic that is applied automaticall…
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.
Suggested Courses

770 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