|
error Unable to attach to application 'Web.Dev.WebServer.Exe'(PID: 5860). using 'T-PC' which is the name for my SQL Server 2005 running on my machine. A debugger is already attached.
What does this mean??
I am trying to upload an Excel file to my SQL Server 2005 which is running on my machine.
|
|
|
|
|
Hi all,
I have a project that consist of several applications (Windows Services and WPF applications communicating via WCF). All applications need certain configuration information, that should be stored in a central / common file.
One application should also be able to write to this config file and the other apps should automatically notice these changes and read in the new values.
Now I'm looking for a way to realize that. I tried a FileSystemWatcher on a "normal" xml file (not a .Net configuation file) in connection with a Mutex to ensure that no application tries to read the file while another application is writing.
It didn't work (The Mutex seemed to be useless, I always got an exception that told me that the file could not be opened because it is already opened by another process).
Any ideas how I could implement this stuff? Should I stay by my "normal" xml file or should I switch to an .Net configuration based approach?
thanks and regards,
MMartin
|
|
|
|
|
The issue you have is that only one application can have the file open, at a time. So, the file watcher isn't going to work. You'd need instead to do something like have a timer which checks the last update time of a file, and have the code written in such a way that it anticipates the possibility of more than one program trying to read the file at once.
Christian Graus - Microsoft MVP - C++
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
Hi Christian,
thanks for your reply!
"The issue you have is that only one application can have the file open, at a time."
That's what I thought, too, and therefore I added a Mutex.
Loading the config file:
<br />
Core.Tracer.Info( "LoadConfigFile: Waiting for Mutex: " + i.ToString() );<br />
m_Mutex.WaitOne();<br />
Core.Tracer.Info( "LoadConfigFile: Locking Mutex: " + i.ToString() );<br />
m_Document.Load( ConfigFileName );<br />
m_Mutex.ReleaseMutex();<br />
Core.Tracer.Info( "LoadConfigFile: Releasing Mutex: " + i.ToString() );<br />
Writing the config file:
<br />
Core.Tracer.Info( "SaveConfigFile: Waiting for Mutex: " + i.ToString() );<br />
m_Mutex.WaitOne();<br />
Core.Tracer.Info( "SaveConfigFile: Locking Mutex: " + i.ToString() );<br />
if(m_Watcher != null) m_Watcher.EnableRaisingEvents = false;
m_Document.Save( ConfigFileName );<br />
if ( m_Watcher != null ) m_Watcher.EnableRaisingEvents = true;<br />
m_Mutex.ReleaseMutex();<br />
Core.Tracer.Info( "SaveConfigFile: Releasing Mutex: " + i.ToString() );<br />
But the Mutex is not working. In my log files I see something like this:
Application 1 Log:
20.08.2007 07:43:20.730; Agent:; LoadConfigFile: Waiting for Mutex: 1
20.08.2007 07:43:20.730; Agent:; LoadConfigFile: Locking Mutex: 1
20.08.2007 07:43:20.733; Agent:; something happend in LoadConfigFile: The process cannot access the file 'C:\Map\Map.config' because it is being used by another process.
Application 2 Log:
20.08.2007 07:43:20.724; Admin:; SaveConfigFile: Waiting for Mutex: 1
20.08.2007 07:43:20.726; Admin:; SaveConfigFile: Locking Mutex: 1
20.08.2007 07:43:20.752; Admin:; SaveConfigFile: Releasing Mutex: 1
I'm losing my mind?
How can Application 1 lock the Mutex at 07:43:20.730 when it is already locked by application 2 at 07:43:20.726?
Could it be that Mutex doesn't work in Windows Services?
Thanks,
MMartin
|
|
|
|
|
Aha,
it seems that the Mutex is not unique:
<br />
bool isNew = false;<br />
m_Mutex = new Mutex( false, "Map_ConfigFile_Mutex", out isNew );<br />
if ( isNew )<br />
{<br />
Core.Tracer.Info( "Mutex is new in System" );<br />
}<br />
else<br />
{<br />
Core.Tracer.Info( "Mutex is NOT new in System" );<br />
}<br />
Application 1 (Windows Service) log:
20.08.2007 08:09:40.672; Agent:; Mutex is new in System
Application 2 (WPF application) log:
20.08.2007 08:09:33.775; Admin:; Mutex is new in System
I ensured that it is not a life-time problem. The Mutex object exists as long as the application (which created the Mutex) exists. So: How can a Mutex be created by two different processes.
Does it make a difference that one application is a Windows Service?
I noticed that, if Application 1 (Windows Service) creates the Mutex, all other Windows Services will say:
20.08.2007 08:09:41.712; Coordinator:; Mutex is NOT new in System
very confusing...
MMartin
|
|
|
|
|
|
hi
I have a major problem.I am designing a simple simulator for my college project,in this simulator I may have some code running simultanesly (vitrual).I mean, in this simulator ,simulator engine may wait on an object and run another object an then return back to the original object like what we have in calling Methods.In this way parallel programming and multi threading in the Apllication layer comes possible.
I need to know if I can do this by halting execution in some point of the code manulay and run another code and the return back to the original code.This simulator runs on a single thread and may have many objects in it and can not have one thread per each object in order to use Mutex.
Thanks
|
|
|
|
|
Hi!
In my program I have to change the language of user's input programmaticaly. User of course is able to do it by himself using CTRL+SHIFT or whatever. But I have to make it by myself. Is there any property that will allow me to do it?
|
|
|
|
|
|
you can use System.Windows.Forms.InputLanguage Class to do this
Installed Languages can be retrieved through InstalledInputLaguages property
changing and retrieving current input language can be done through CurrentInputLanguage property
here is an example to change the input language to Farsi
<code>
foreach (InputLanguage lang in InputLanguage.InstalledInputLanguages)
if(lang.LayoutName == "Farsi")
{
InputLanguage.CurrentInputLanguage = lang;
break;
}
</code>
and another way to change the language is through using cultures like
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(CultureInfo.CurrentCulture);
good luck
|
|
|
|
|
|
oops. Sorry. I just realized that I need this change in Console, not in Windows.Forms.
|
|
|
|
|
hello
I want to introduce you a tool in c# . with this tool you can connect to telnet.this is terminalemulator.
|
|
|
|
|
Hello,
I'm trying to work out a way to replace some text using regular expressions, but seems to be missing something. Here goes:
--------
inputstring = "<b>Str</b>: Large<br><b>Color</b>: Black<br>".
output should be: "Large-Black"
OR
inputstring = "<b>Str</b>: Small<br>"
output should be: "Small"
OR
inputstring = "<b>Str</b>: Large<br><b>Color</b>: Black<br><b>Engraving</b>: yes<br>"
output should be: "Large-Black-yes";
my regularexpression method looks like this:
{
string s = Regex.Replace(attribut, @"(<b>.*</b>)+:\s(?<keeper>.*)<br>", "${keeper}-");
return s.Remove(s.Length-1, 1);
}
But this will only give me the last ocourance of <keeper>. Eg Black for the first example given.
Any clue/help is very appreciated.
thanks
Frank
|
|
|
|
|
Have you checked your regex? Look for Expresso on this site. It is a wonderful tool for testing your regular expressions.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Dear all,
Quick question. I'm trying implement the project " TaskBarNotifier " ( http://www.codeproject.com/cs/miscctrl/taskbarnotifier.asp[^] in my application. On compilation everything goes well, but during execution it throws an exception:
Resource 'skin.bmp' cannot be found in class 'ICNS.MainApplication'.
I've added the bmp to the resources, even tried setting the path manually but to no avail.
I've put the following code in the constructor of my main form :
taskbarNotifier = new TaskbarNotifier();<br />
taskbarNotifier.SetBackgroundBitmap(new Bitmap(GetType(), "skin.bmp"), Color.FromArgb(255, 0, 255));<br />
taskbarNotifier.SetCloseBitmap(new Bitmap(GetType(), "close.bmp"), Color.FromArgb(255, 0, 255), new Point(280, 57));<br />
taskbarNotifier.TitleRectangle = new Rectangle(150, 57, 125, 28);<br />
taskbarNotifier.ContentRectangle = new Rectangle(75, 92, 215, 55);<br />
taskbarNotifier.ContentClick += new EventHandler(ContentClick);<br />
taskbarNotifier.CloseClick += new EventHandler(CloseClick);
Can anyone tell me what I am doing wrong ?
|
|
|
|
|
Not sure but you may want to ask the author of the article...
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
hello.i workwith C#.net.i want to use twain.dll.i add twain.dll to my project with add refrence but there are error:"twain.dll" is not a valid assembly or COM componenet.help me for solve this problem and use from this dll.
|
|
|
|
|
twain.dll cannot be added direcly to projects
you must use it through invoking with DllImport
this may help http://www.codeproject.com/dotnet/twaindotnet.asp[^]
and there is another way for using scanners beside the twain you can do it through WIA too.
good luck
|
|
|
|
|
Read the How to get an answer to your question post at the top before posting anything else.
Hello and error are not very good subjects
only two letters away from being an asset
|
|
|
|
|
iwork with C#.net.i download gdtwain.ocx and then add to my project with add refrence.i have error:gdtwain.twainclass.twainclass() is inaccesible due to its protection level help me for solvethisproblem.thanks
|
|
|
|
|
That's probably because the reference, or the ocx modifier is set to private. Try public.
|
|
|
|
|
I am locking for get the function names through .Net tools like dumpbin.exe
from the dlls like use32.dll and shell32.dll it provide the name of function included int that dll but does not show the number of argument and datatype of the arguments.
Plz help me out and give me some helpful hints.
|
|
|
|
|
you can't get any information on the function arguments, neither does dumpbin.
that information is not available, short of interpreting the assembly code and
guessing a lot.
you can get the export list, the import list, etc. but these show function names
only. I have C# code that does exactly that.
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|
|
Hi there,
I want to auto generate an ASP web page which includes a display of selected data from a database.
What I am doing here is as follows;
* I've got a standlalone appdone in C#.
* I am selecting what tables I need to display using ASP, thorough the UI.
* What I want to do is, create the ASP page, so that the selected columns from the selected table will be displayed.
The generation of the ASP page is giving me trouble. How can it be done with the minimum effort?
Regards,
A
|
|
|
|