Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6323039
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T16:26:38+00:00 2026-05-24T16:26:38+00:00

Well, here I am again with another frustrating question. I need to end my

  • 0

Well, here I am again with another frustrating question.
I need to end my main process and restart it, but I can’t just end the application gracefully…

I am using a C# application in conjunction with proprietary (not to me) data capture hardware, so right there it’s already complicated.

There is a scenario when my software is happily running, collecting its data as it should, when the hardware I’m interfacing with suddenly loses power and the connection to my application. My application eventually figures this out and I just need to dispose of my old connection, and make a new one to connect to my hardware again. Wrong…

Of course, the .Dispose() method on my object (the interface object with the hardware), that terminates the connection does nothing, and actually just locks in place forever when I try to run it. Apparently there is some kind of communication that never times out on the dispose method that requires the device to be connected when the disconnection happens. I didn’t write the method, so I don’t really know.

Finally, here’s my question. The only way to get my application up and running again is to close it and reopen it. Of course, I can’t actually close it nicely because I can’t run the Dispose method. I am forced to end it’s process via task-manager. Yes, the process, not just the application. If I just close it, the process will stay alive forever, I have no choice.

I need to find a way to automate this process assassination so my users can actually use it, but what can I do? I know process termination is taboo, but what options do I have?

I’d love to use Application.Restart(), but that doesn’t work at all, my form doesn’t even close, it just locks. Is there a way to axe the process just before telling itself to launch again? Maybe I can do this with a batch file or something? Application.Exit at least takes the form off the screen.

As of now, I’m killing it from Task Manager, or my users are killing it by popping the breaker on the PC. Considerably more harsh than anything software-wise.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-24T16:26:39+00:00Added an answer on May 24, 2026 at 4:26 pm

    Have you considered isolating the problematic component in another process? I know it sounds complicated, but if you create another “application” which solely exists as a conduit to your device, you can make your main application just start a new one of those if the old one becomes unresponsive. It can nuke the old one, start a new one, and be “clean” again.

    It does mean all kinds of inter-process communication of course, but the general idea of isolating something flaky is often a useful one.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Here is my code (well, some of it). The question I have is, can
My question is stated above in the title but I'll write it here again
Here is an easy one, but can't figure out why is not working. Need
Here is well described how to call member function by pointer: http://www.newty.de/fpt/functor.html But the
The question of composite keys in web2py was answered pretty well by Anthony here
Well i need some help here i don't know how to solve this problem.
Well, here is my problem: I have an application that uses a custom Javascript
Well, here we are. Yet another proposed practice that my C++ book has an
I found this in another question/answer and modified it... but it still doesn't work.
Extreme Android developer newbie here...well, new to Android development, not development in general. I

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.