Solved

Handling multiple instances of Word with multiple documents when Automating Word

Posted on 2007-03-26
7
261 Views
Last Modified: 2013-11-07
Experts,

I need to generate a word document with data stored in SQL Server 2005 using VB.Net.  

I use to do this sort of thing a lot in VB6 and I'm new to .Net.  I remeber that having different instances of Word open and multiple documents per Word instance always was a n problem until I found some VB6 code to take care of it. Never really understood the code though ....

My question is:  what is the correct way handling this problem in .Net?

Thanks
0
Comment
Question by:PantoffelSlippers
  • 4
  • 3
7 Comments
 

Author Comment

by:PantoffelSlippers
ID: 18897398
Doubled the points!

Any suggestions?

Thanks
0
 
LVL 6

Expert Comment

by:nirojexpert
ID: 18930545
there are two methods createObject and getObject
use the getObject to get a previous instance of the application.

or create a word application at global level

open each doument using the same word application object.
0
 
LVL 6

Expert Comment

by:nirojexpert
ID: 18930547
you should also close the objects after creating it


set wordApp = nothing
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:PantoffelSlippers
ID: 18931840
OK but how do I know if an existing instance of Word is already running?  If Word is already open I would not like to open another instance.  

Also, in VB6 I would add a reference to the Word OLB file; is there a replacement in .Net for this or do I still add a COM object / OLB file?
0
 
LVL 6

Accepted Solution

by:
nirojexpert earned 500 total points
ID: 18936726
try getObject first, if it generates error at runtime, then use the createObject
on error goto err_getObj

set s = getObject("...")
goto withOBJ
err_getObj:
on error resume 0 'cancel on error
'we will have to create it
set s = createObject("....")

withObj:


about olb for .net, i think the same.
0
 

Author Comment

by:PantoffelSlippers
ID: 18975293
Any idea what goes inside the brackets?

set s = CreateObject("xxx")  :  what should xxx be?  Would the value of xxx change depending on the version of Word installed?  (2000, 2002, 2003, 2007).

Also, if I'm correct, you are using VB6 syntax above- will it be the same for .Net?

Thanks
0
 
LVL 6

Expert Comment

by:nirojexpert
ID: 18977593
the object name is independent of the class name. so do not worry about it.
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Simple Injector with Web Service 4 42
How do you do a one to many list in .NET CORE? 2 28
help with regular expression to search string 6 27
VB.NET 2008 - SQL Timeout 9 24
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
Parsing a CSV file is a task that we are confronted with regularly, and although there are a vast number of means to do this, as a newbie, the field can be confusing and the tools can seem complex. A simple solution to parsing a customized CSV fi…
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

803 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