|
I could use this:
Process.Start("c:\\Program Files\\Winzip\\wzzip.exe ",strArgs)
Which works, but I come into a problem there. This code is going through a loop. It executes the line x many times then continues on with the next line of coe. The next line of code uses the files names just created. One small problem - the processes have not finished yet so therefore the is no file names to work with.
Is there a way to check if the process started by Process.Start is finished before moving on to the next one?
Jude
|
|
|
|
|
TheJudeDude wrote: Is there a way to check if the process started by Process.Start is finished before moving on to the next one?
Yes there is. You can use either Process.HasExited Property to determine that or Process.WaitForExit method to wait for a process exit.
<br />
Process myproc=Process.Start("c:\\Program Files\\Winzip\\wzzip.exe ",strArgs);<br />
<br />
if(myproc.HasExited)<br />
{<br />
}<br />
else<br />
{<br />
}<br />
Or
<br />
Process myproc=Process.Start("c:\\Program Files\\Winzip\\wzzip.exe ",strArgs);<br />
<br />
myproc.WaitForExit(); <br />
WaitForExit() waits an infinite amount of time for the process to exit. This can cause an application to stop responding so I recommend you use overload ofWaitForExit which except amount of time to wait for and returns a boolean value indicating whether the process has exited or not
|
|
|
|
|
TheJudeDude wrote: Hi All. I am trying to use process.start but I am getting a file not found exception.
Here is the code - I broke it down to try and find out where the error was:
strArgs = DateTime.Now.AddMonths(-1).ToShortDateString();
strArgs = strArgs.PadLeft(10,'0');
strArgs = strArgs.Remove(2,4);
file = file.PadLeft(2,'0');
strArgs = " d:\\EOM\\EOM" + file + strArgs + ".ZIP";
path = " d:\\eom\\" + file + "\\*.m*";
strArgs = strArgs + path;
strArgs = "c:\\Progra~1\\Winzip\\wzzip.exe " + strArgs;
myProcess.StartInfo.FileName = strArgs;
myProcess.StartInfo.CreateNoWindow = true;
try
{
blTest = myProcess.Start();
}
catch (SystemException caught)
{
Console.WriteLine(caught.ToString());
}
From reading the documentation, it looks to me like StartInfo.FileName should just contain
"c:\\Program Files\\Winzip\\wzzip.exe" and the rest of the arguments should be put in StartInfo.Arguments
Nathan
|
|
|
|
|
Thanx Nathan that worked. I was going to use the boolean value to see if the process was finished, but this is obviously not the intended purpose.
Could anyone give me an idea on how to find out if a process started with process.start is finished?
Jude
|
|
|
|
|
I have just answered your question a little bit above
|
|
|
|
|
|
Glad to help you
|
|
|
|
|
Well, if you glad to help, one more question.
The MSDN documentation sometimes has me dumbfounded. Where could I get a thorough book on the .net framework?
I dabble in linux with scripts in bash, windows with VS, and a few old skool database management systems, along with being the tech support guy for a 25 location company, so I am not always at the keyboard coding away. IOW - I should/could have found that answer myself, but did not through the MSDN documentation.
I would love a comprehensive desk reference on the .net framework.
Thanx
Jude
|
|
|
|
|
|
hi
i want to playBack video as streaming, but how to do ?
thanks
|
|
|
|
|
Launch Media Player and tell it where to get the stream from.
If you want a more thorough answer, post a more thorough question.
|
|
|
|
|
you are mean that i use Windows Media Player ?
if yes how to use it for playBack video as stream ?
thanks
|
|
|
|
|
Hi,
Im using Visual Studio 2005 and .Net 3.0. I wanted to apply Break Points in my Custom Attribute class. I and my falla both used number of sample code but code is not executing Custom class nor break points work.
Here is someone sample code. Im not able to apply Break point.
Can anyone knows the answer?
<br />
namespace RegKeyAttributeTestor<br />
{<br />
[AttributeUsage(AttributeTargets.Method|AttributeTargets.Struct,<br />
AllowMultiple=false,Inherited=false)]<br />
public class MyAttribute:Attribute<br />
{<br />
private string regKey="a12nf";<br />
public MyAttribute(string regKey)<br />
{<br />
if(this.regKey==regKey)<br />
{<br />
Console.WriteLine("Permitted to use this App");<br />
}<br />
else<br />
{<br />
Console.WriteLine("Not registered to use this App");<br />
}<br />
}<br />
}
class useAttrib<br />
{<br />
[MyAttribute("hello")]<br />
public static string SayHello(string str)<br />
{<br />
return str;<br />
}<br />
static void Main()<br />
{<br />
Console.WriteLine(SayHello("Hello to Sufyan"));<br />
Console.ReadLine();<br />
}<br />
}<br />
<br />
}<br />
Thanks ,
sha
|
|
|
|
|
Sha Sea wrote: Hi,
Im using Visual Studio 2005 and .Net 3.0. I wanted to apply Break Points in my Custom Attribute class. I and my falla both used number of sample code but code is not executing Custom class nor break points work.
Here is someone sample code. Im not able to apply Break point.
Can anyone knows the answer?
I believe the custom attribute code would be executed at compile time rather than run time, so by the time the debugger starts, the attribute constructor has already been executed. Also, you couldn't use the attribute to authorize someone to use the code because the code would just be executed on your machine, and the resulting attribute object would just be included in the executeable file.
Nathan
|
|
|
|
|
Thankx.
Even i put the MessageBox.Show() it is not showing anything.
Its weird thing for me.
What do you say?
Thanks,
sha
|
|
|
|
|
Sha Sea wrote: Thankx.
Even i put the MessageBox.Show() it is not showing anything.
Its weird thing for me.
What do you say?
You could test the code in an attribute class by creating an object with new . Another possibility is to not use attributes for what you're doing.
Nathan
|
|
|
|
|
hello!
plz can some body tell me in c# how can i delete a file used by another process?
i'm trying to delete a file by:
File.Delete(@"C:\test.txt");
a System.IO.IOException appear:
"cannot acess the file because it is being used by another process."
I don't know where in my application i'm using this file, but i need to delete it.
thank you
Best Regards,
Jimmy.
|
|
|
|
|
If your application has opened this file then you should close it properly by calling the Close() method of a stream so that other processes (as well as yours) can access it.
If you need to force file delete then you will need to close all open handles to this file. Here is a link which describes how to do it. You will need P/Invoke to port it to c#
Deleting Locked Files[^]
|
|
|
|
|
Also, when you "force" the file to be close, don't be surprised when the process that opened it crashes...
|
|
|
|
|
Dave Kreskowiak wrote: "force" the file to be close, don't be surprised when the process that opened it crashes...
My same thoughts. I don't know why he wants to delete a locked file in the first place. Sounds potentially dangerous.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Sir, its me again.. i have been having some problems on networking in c#.. it involves databasing.. i tried downloading the data from the server that i have created.. the idea was, i should be able to download the data on a database that is located on the server that i have made, but whenever i tried to open the data on my client side, it always returns an exception.. nullReference... but when i tried testing it on the server, the data was read.. can you help me again sir on how can i resolve this problem.. The formatter that i was using is a Binary Formatter, and the channel is tcp channel.. thank you sir..
-- modified at 11:24 Friday 14th September, 2007
|
|
|
|
|
Hi people...
I know that exists a HelpProvider component... but I think that writing a pdf is much more comfortable than 1000 topics (with related 1000 .htm pages)!
Is there a way to open a pdf file at a specified index? Or HelpProvider gives other possibilities instead of chm or htm files?
If I do have to create a htmlhelp file, which editor do you suggest?
|
|
|
|
|
People expect help files to be CHM or HLP files, and to be honest it's easier for people to use the search facilities in help files. Anyway, I like HelpScribble[^].
Deja View - the feeling that you've seen this post before.
|
|
|
|
|
if i want to delete the selected row in a list view i use:
if (listView1.SelectedItems.Count > 0)
{
if (MessageBox.Show("Vill du verkligen ta bort denna?", "Mina jobb",
MessageBoxButtons.YesNo, MessageBoxIcon.Question)
== DialogResult.Yes)
{
for (int i = listView1.SelectedItems.Count - 1; i >= 0; i--)
listView1.Items.Remove(listView1.SelectedItems);
}
}
But if i want to delete this selected row from a .txt file how do i do that..???
it´s four subitems and the .txt file look like this
#
blah
blablah
blabl
blaaa
//thanks;);P sigh:
|
|
|
|
|
andredani wrote: But if i want to delete this selected row from a .txt file how do i do that..???
It's your course assignment not ours. I'm pretty sure the point of the assignment is for "you" to figure that out rather than for you to go out on the internet and ask people how to do it. I mean really, you are in school now, if this is not the time when you are going to start thinking for yourself and developing problem solving skills, when are you?
|
|
|
|