Windows Develop Bookmark and Share   
 index > Windows Forms General > Problem with calling a ProcessStartInfo from within application.
 

Problem with calling a ProcessStartInfo from within application.

In my application I start a ProcessStartInfo to run the lame.exe encoder. For most users, it works fine but for some the process just won't intialize.

For the users having trouble I have sent a test application with the same code, when they run this test.exe their computer can create and fire a process which runs lame perfectly fine. It is just from within my main application they cannot.

The difference is the main application is installed via an installer to the program files, whereas the test app was just an exe then ran from the desktop (or whereever they put it)

Anyway else ran into this problem? any advice?

I have checked what spyware / virus / security software of the users having this issue and there doesn't appear to be any consistency there.


Speedie  Thursday, August 14, 2008 8:23 AM
Programs called "Lame" aren't usually very tolerant to getting started without the psi.WorkingDirectory set properly. I'd guess that the users that have trouble have used a OpenFileDialog just before trying to run your code. Or didn't, hard to guess.
nobugz  Thursday, September 25, 2008 12:44 PM
Speedie wrote:
In my application I start a ProcessStartInfo to run the lame.exe encoder. For most users, it works fine but for some the process just won't intialize.

For the users having trouble I have sent a test application with the same code, when they run this test.exe their computer can create and fire a process which runs lame perfectly fine. It is just from within my main application they cannot.

The difference is the main application is installed via an installer to the program files, whereas the test app was just an exe then ran from the desktop (or whereever they put it)

Anyway else ran into this problem? any advice?

I have checked what spyware / virus / security software of the users having this issue and there doesn't appear to be any consistency there.


Do you correctly state the path where the lame.exe file is?
Lucian Baciu  Monday, August 18, 2008 8:49 AM

I have included the code below. I don't think it is the path, as users have reported they get a message flick up in the Dos prompt saying "cannot intialize". If if was the path, I don't think it would work in same instances and not others.


[code]string lamePath = Path.Combine(Application.StartupPath, "Lame.exe");

System.Diagnostics.Process prcInvokeLame = System.Diagnostics.Process.Start(ConversionProcess);


System.Diagnostics.ProcessStartInfo ConversionProcess = new System.Diagnostics.ProcessStartInfo(lamePath);

ConversionProcess.UseShellExecute = false;
ConversionProcess.RedirectStandardOutput= false;
ConversionProcess.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
ConversionProcess.Arguments = strArguments;
ConversionProcess.CreateNoWindow = false;


System.Diagnostics.Process prcInvokeLame = System.Diagnostics.Process.Start(ConversionProcess);[/code]

Speedie  Thursday, September 04, 2008 10:57 AM
Speedie wrote:

I have included the code below. I don't think it is the path, as users have reported they get a message flick up in the Dos prompt saying "cannot intialize". If if was the path, I don't think it would work in same instances and not others.


[code]string lamePath = Path.Combine(Application.StartupPath, "Lame.exe");

System.Diagnostics.Process prcInvokeLame = System.Diagnostics.Process.Start(ConversionProcess);


System.Diagnostics.ProcessStartInfo ConversionProcess = new System.Diagnostics.ProcessStartInfo(lamePath);

ConversionProcess.UseShellExecute = false;
ConversionProcess.RedirectStandardOutput= false;
ConversionProcess.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
ConversionProcess.Arguments = strArguments;
ConversionProcess.CreateNoWindow = false;


System.Diagnostics.Process prcInvokeLame = System.Diagnostics.Process.Start(ConversionProcess);[/code]

Application.StartupPath will give you the path to your current running program. You're combining this with lame.exe. Is lame.exe in the same directory with your application? Cause if it's not, then you'll have to provide it's path, and not the path of your currently running app (the app that calls lame.exe)

Lucian Baciu  Thursday, September 04, 2008 11:02 AM
The path to the lame.exe file is correct. The file is included in the program files folder of my application. I am sure this isn't the problem as the problem is only affecting a small amount of our users.
Speedie  Thursday, September 25, 2008 9:22 AM
Programs called "Lame" aren't usually very tolerant to getting started without the psi.WorkingDirectory set properly. I'd guess that the users that have trouble have used a OpenFileDialog just before trying to run your code. Or didn't, hard to guess.
nobugz  Thursday, September 25, 2008 12:44 PM

You can use google to search for other answers

Custom Search

More Threads

• Modify text file.
• Button action on listbox event
• How to use DDBLTFX?
• Repainting A ListView Items
• Timing Textbox Events
• Exception Handling in Windows Forms
• How to prevent a Win Form from show up the second time
• MDI Forms
• Movement between forms
• Question about combobox And CheckedListBox...