473,785 Members | 2,283 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

REPOST-MSOffice manipulation w/ WebPage or SmartClient?

Hi, no one answered so I thought reposting would get this some attention...

What is the best way to manipulate MSOffice programs? I understand that
regular web pages do not have certain permissions (because of safety
measures) to do things like open up MS word/excel programs, for example, from
a web site. Usually an activex control must be installed first I think?

What I need is a strategy for the best way to open up word/excel
applications and manipulate them by adding/removing text, formatting, and
doing mail merge types of transactions. Would ActiveX be the best strategy
to accomplish this from a web page?

I am NOT trying to make a desktop application to manipulate MSOffice only
because people want to be able to use this program from remote locations. I
have also taken a look at smart clients but I am not sure how difficult it is
to code them or if it is even a good idea?

Any thoughts or comments are welcome. Thanks in advance.
Jul 21 '05 #1
5 1657
You can programmaticall y manipulate Office documents on a web server,
but you will need to configure the code, web application, or the COM
object to run as a specific user that has the necessary permissions to
work with the documents.

If you want to manipulate Office documents on a server for a client,
then the best way is to use the Office Primary Interop Assemblies
(PIA), which can be downloaded from Microsoft. The PIA allows you to
interface with the Office COM objects, exposing the objects, methods,
and properties that will allow you to do just about anything to the
documents. Though, the PIA only exists for Office XP and 2003.
However, a cautious warning: Office was not intended to be automated
without an acutal user. Therefore, potential problems could occur
doing automation that will cause the process to hang. For instance, if
you are automating an Excel spreadsheet that generates some type of
prompting error during your manipulation, then the process will hang
because it is waiting for a user response that can never be given.

Jul 21 '05 #2
Thanks for replying.

The word/excel document templates will be loaded from the server on the
network and manipulated on the client machine. Any client machine on the
network should/will have permissions to access these documents. Howeve, I
thought that ASP.NET for example, was not allowed to load up Word/Excel using
the 'Set appWord = CreateObject("W ord.Application ")' command because of
security reasons. Guess I was wrong and it can in fact be done? I will take
a deeper look into this...

Any knowledge of Smart Client? I guess a Smart Client ISN'T the way to go
after all...I'm still a little unclear as to if using them would be a good
idea? It's just that my company currently uses a desktop interface on the
network and I thought that coding a Smart Client would give them the
familiarity of a desktop interface witih the ability to talk over the
internet/network w/ web services whenever needed. Then again, it may just be
a whole lot more work of code (creating XML web services and logic handlers
for Smart Clients) that do not need to be done. Do you have any knowledge of
Smart Client? If not, it's ok I will continue to look into your response.
Thanks again.

"Boyd Ferris" wrote:
You can programmaticall y manipulate Office documents on a web server,
but you will need to configure the code, web application, or the COM
object to run as a specific user that has the necessary permissions to
work with the documents.

If you want to manipulate Office documents on a server for a client,
then the best way is to use the Office Primary Interop Assemblies
(PIA), which can be downloaded from Microsoft. The PIA allows you to
interface with the Office COM objects, exposing the objects, methods,
and properties that will allow you to do just about anything to the
documents. Though, the PIA only exists for Office XP and 2003.
However, a cautious warning: Office was not intended to be automated
without an acutal user. Therefore, potential problems could occur
doing automation that will cause the process to hang. For instance, if
you are automating an Excel spreadsheet that generates some type of
prompting error during your manipulation, then the process will hang
because it is waiting for a user response that can never be given.

Jul 21 '05 #3
Here are a few comments that may help you with your design or point you
in a better direction:

In a closed environment where everyone is using Windows and has the
..NET Framework, then a smart client is almost always a better solution
than a web page. Web pages are only good for two things: displaying
read-only information or providing an interface that can be usable
across multiple operating systems. If you have a Microsoft
environment, then use a smart client using no-touch deployment (NTD).
NDT may be called by other names, but searching for "no touch
deployment" or "NTD" will give you information about this type of
deployment. NTD will allow you to distribute a Windows Forms
application like a web page; someone would simply type the URL or click
on a web page link to access the application. (You may need to adjust
the client's .Net Security settings to allow the application to
execute.)

If you are going to manipulate the Office document on the client and
want to use web pages, then you could perform this task on the client
using JavaScript. The security policy on the client would need to
allow the creation of ActiveX controls via JavaScript, using the
ActiveXObject. For the Office document's location, you would use the
web path, such as http://MyWebServer/MyDocument.doc. Here is a link
for the description on the JScript object:

http://msdn.microsoft.com/library/de...iveXObject.asp

I do not know the type of application you are building, so a web
application may be the best solution. However, you may want to
consider Windows Forms instead of web pages: create a windows
application, deploying it via the web using NDT. However, the client
machines will need to have the Office PIA installed and may need their
security settings adjusted. Though, if you still want to use web
forms, then you could use a .NET assembly embedded on the web page
using the <object> tag, using JavaScript to access the .NET Object.
Catch you later,

Boyd

Jul 21 '05 #4
Here are a few comments that may help you with your design or point you
in a better direction:

In a closed environment where everyone is using Windows and has the
..NET Framework, then a smart client is almost always a better solution
than a web page. Web pages are only good for two things: displaying
read-only information or providing an interface that can be usable
across multiple operating systems. If you have a Microsoft
environment, then use a smart client using no-touch deployment (NTD).
NDT may be called by other names, but searching for "no touch
deployment" or "NTD" will give you information about this type of
deployment. NTD will allow you to distribute a Windows Forms
application like a web page; someone would simply type the URL or click
on a web page link to access the application. (You may need to adjust
the client's .Net Security settings to allow the application to
execute.)

If you are going to manipulate the Office document on the client and
want to use web pages, then you could perform this task on the client
using JavaScript. The security policy on the client would need to
allow the creation of ActiveX controls via JavaScript, using the
ActiveXObject. For the Office document's location, you would use the
web path, such as http://MyWebServer/MyDocument.doc. Here is a link
for the description on the JScript object:

http://msdn.microsoft.com/library/de...iveXObject.asp

I do not know the type of application you are building, so a web
application may be the best solution. However, you may want to
consider Windows Forms instead of web pages: create a windows
application, deploying it via the web using NDT. However, the client
machines will need to have the Office PIA installed and may need their
security settings adjusted. Though, if you still want to use web
forms, then you could use a .NET assembly embedded on the web page
using the <object> tag, using JavaScript to access the .NET Object.
Catch you later,

Boyd

Jul 21 '05 #5
Thank you very much!

"Boyd Ferris" wrote:
Here are a few comments that may help you with your design or point you
in a better direction:

In a closed environment where everyone is using Windows and has the
..NET Framework, then a smart client is almost always a better solution
than a web page. Web pages are only good for two things: displaying
read-only information or providing an interface that can be usable
across multiple operating systems. If you have a Microsoft
environment, then use a smart client using no-touch deployment (NTD).
NDT may be called by other names, but searching for "no touch
deployment" or "NTD" will give you information about this type of
deployment. NTD will allow you to distribute a Windows Forms
application like a web page; someone would simply type the URL or click
on a web page link to access the application. (You may need to adjust
the client's .Net Security settings to allow the application to
execute.)

If you are going to manipulate the Office document on the client and
want to use web pages, then you could perform this task on the client
using JavaScript. The security policy on the client would need to
allow the creation of ActiveX controls via JavaScript, using the
ActiveXObject. For the Office document's location, you would use the
web path, such as http://MyWebServer/MyDocument.doc. Here is a link
for the description on the JScript object:

http://msdn.microsoft.com/library/de...iveXObject.asp

I do not know the type of application you are building, so a web
application may be the best solution. However, you may want to
consider Windows Forms instead of web pages: create a windows
application, deploying it via the web using NDT. However, the client
machines will need to have the Office PIA installed and may need their
security settings adjusted. Though, if you still want to use web
forms, then you could use a .NET assembly embedded on the web page
using the <object> tag, using JavaScript to access the .NET Object.
Catch you later,

Boyd

Jul 21 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
1759
by: Joe | last post by:
Please repost answer message did not make it last time Hello, Joe here, wanted to get the 411 on this article. I posted in the FrontPage forum but there is never an answer. So I have come here, where all my IIS problems have been solved (Thank YOU!!) I want to create a small utility web site with a logon page and a form connected to an Access database. The article below explains exactly how but when
4
2270
by: Mike Lundell | last post by:
lemee try this again, for today's date :)... .............. what's wrong with this, and .. can you not declare "char" variables? #include <iostream> int main() {
2
1811
by: Ohaya | last post by:
Hi, We've been having a problem with one particular page that has a button on it, and a "tall" image (top-to-bottom). The button calls some simple Javascript to print the frame in which the image is located, and what is happening in the field is that the image only gets partly printed. Only the first page gets printed, and the bottom of the image, which should get printed on a 2nd page, is not printed. Also, the bottom of the first...
1
1260
by: Fresh Air Rider | last post by:
Hi Everyone Scenario A Webage has two dropdown lists, one for Suppliers and one for Products. When a user selects a supplier, it then populates the Products dropdown list with the relevant products for the selected supplier.
0
1258
by: rawCoder | last post by:
Hi All, This is a repost of 'Disable DataGrid AutoScroll of 3/7/2005' Its related to "WinForm DataGrid" HOW can i force the grid NOT to Auto Scroll to the ( newly added item OR last selected item )? Currently as a new item is entered, the grid SCROLLS hence changing the
3
1869
by: Adam | last post by:
I've posted about this previously, but failed to receive a satisfactory response, so have included a code sample: I am trying to receive messages from an HTML viewer control in compact.net (c#), but cannot use message window as the control's parent window, as this is invisible and so the html is not viewable! I have a code sample showing the problem at www.tenwisevirgins.com/Example.zip
14
2837
by: Steve McLellan | last post by:
Hi, Sorry to repost, but this is becoming aggravating, and causing me a lot of wasted time. I've got a reasonably large mixed C++ project, and after a number of builds (but not a constant number) linking (and sometimes compiling) becomes immensely slow, and task manager shows that link.exe (or cl.exe) is barely using any processor time, but an awful lot of RAM (around 150-200MB). I'm going to keep an eye on page faults since I can't...
5
2448
by: Adrian Parker | last post by:
I've got the standard SqlCacheDependency working just fine , ie. I've defined (and encrypted) the connectionStrings section in the web.config, and I've also defined an an sqlCacheDependency in the caching section. So, in my code I add an item to the cache with an sqlCacheDependency, referencing the named sqlCacheDependency in the web.config and the database table it is to be based on (have enabled notificiations for that table). Fine. ...
2
1310
by: Gerry | last post by:
I have a combo box and I can populate it with my class of dat (the class allows me to store each userid,username called - see code below I want the user to select the dropdown and see the username - but also determine the UserID from what was selected (using DisplayName from the combo box?? I can populate the combo box without problems - BUT the user sees "System.object" in each item of the combobox not the username ***here is my clas...
2
1454
by: Raj | last post by:
Hi, I have the following problem. I am displaying and printing a PDF file that is generated by my Application server. The print dialogs comes up correctly for the small PDF for the larger PDFs ,the print dialog for the Acrobat reader does not comes up. I believe this is because print method is called before the complete loading of the PDF document. <html> <Head> <script>
0
9643
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10147
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10083
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9946
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8968
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7494
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5379
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
4044
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2877
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.