473,386 Members | 1,815 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

How to determine what process blocks my DLL?

Hi

I'm implementing an simple updater application that updates another
application.
The scenario is as follows:
The main application (MA) checks if there are any updates. If updates
are present, it starts another application: the updater application
(UA).
After that, UA waits for MA to exit. After MA exits, UA reads the
updating package and overwrites all the files.
Unfortunately, some private dll's are still in use, even after MA has
exited (!). It's impossible that those dll's are used by another
process because no running process references my dll.

Is there a way to find out what other process holds and blocks my dll?

Thanks.

May 1 '07 #1
2 1503
nano2k,

Not to try and dissuade you, but considering that there is an
Application Updater Block in the Enterprise Library, and that ClickOnce also
provides very similar functionality, why would you try and rewrite this
functionality yourself?

For more information on ClickOnce:

http://msdn2.microsoft.com/en-us/net.../aa497348.aspx

For more information on the Application Updater Block:

http://msdn2.microsoft.com/en-us/library/ms978574.aspx

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard.caspershouse.com

"nano2k" <ad***********@ikonsoft.rowrote in message
news:11**********************@c35g2000hsg.googlegr oups.com...
Hi

I'm implementing an simple updater application that updates another
application.
The scenario is as follows:
The main application (MA) checks if there are any updates. If updates
are present, it starts another application: the updater application
(UA).
After that, UA waits for MA to exit. After MA exits, UA reads the
updating package and overwrites all the files.
Unfortunately, some private dll's are still in use, even after MA has
exited (!). It's impossible that those dll's are used by another
process because no running process references my dll.

Is there a way to find out what other process holds and blocks my dll?

Thanks.

May 1 '07 #2
Thanks Nicholas,

Forgot to mention. I'm using VS2003 with .NET 1.1.
Anyway, meantime I found out that VS was blocking my DLLs because I
used them for toolbox.
But still the question remains - is there a way to programatically get
the process/es that loaded a specific DLL?

Thanks.
Nicholas Paldino [.NET/C# MVP] a scris:
nano2k,

Not to try and dissuade you, but considering that there is an
Application Updater Block in the Enterprise Library, and that ClickOnce also
provides very similar functionality, why would you try and rewrite this
functionality yourself?

For more information on ClickOnce:

http://msdn2.microsoft.com/en-us/net.../aa497348.aspx

For more information on the Application Updater Block:

http://msdn2.microsoft.com/en-us/library/ms978574.aspx

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard.caspershouse.com

"nano2k" <ad***********@ikonsoft.rowrote in message
news:11**********************@c35g2000hsg.googlegr oups.com...
Hi

I'm implementing an simple updater application that updates another
application.
The scenario is as follows:
The main application (MA) checks if there are any updates. If updates
are present, it starts another application: the updater application
(UA).
After that, UA waits for MA to exit. After MA exits, UA reads the
updating package and overwrites all the files.
Unfortunately, some private dll's are still in use, even after MA has
exited (!). It's impossible that those dll's are used by another
process because no running process references my dll.

Is there a way to find out what other process holds and blocks my dll?

Thanks.
May 1 '07 #3

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

Similar topics

2
by: Peter Schmiedeskamp | last post by:
Hello, I'm writing a python program (in Windows) from which I would like to determine whether or not either: 1. The user has administrative access on the current PC. or (better) 2. The currently...
24
by: Xah Lee | last post by:
suppose i'm calling two system processes, one to unzip, and one to “tail” to get the last line. How can i determine when the first process is done? Example: subprocess.Popen(); ...
18
by: jas | last post by:
Hi, I would like to start a new process and be able to read/write from/to it. I have tried things like... import subprocess as sp p = sp.Popen("cmd.exe", stdout=sp.PIPE)...
8
by: Gabe Moothart | last post by:
Hi, I'm writing a windows service which interacts with a separate process. Basically, it calls a process which creates a file, and then my service reads that file. The problem is, the external...
11
by: LordHog | last post by:
Hello, I recently wrote an application that is used for testing units in a burn-in chamber. It uses two external library that require the use of P\Invoke in order to work with them. There is a...
3
by: Danny Miller | last post by:
Hi there, I've got a web app that uses impersonation and makes calls to a SQL Server backend. I'd like to be able to automate the setting of database security for the web app upon deployment....
5
by: Dino Buljubasic | last post by:
My application can allow a user to open a file for viewing by fetching file data from database, creating the file in a temp directory and starting appropriate process (i.e. Adobe or any other...
0
by: smimon | last post by:
Hi I'm trying to run a DTS package from a ASP.NET web page using System.Diagnostics.Process. This DTS takes up to 10 minutes to complete, during which, output is generated which i would like to...
13
by: bayer.justin | last post by:
Hi, I am trying to communicate with a subprocess via the subprocess module. Consider the following example: <subprocess.Popen object at 0x729f0> Here hey is immediately print to stdout of...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
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...

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.