|
Hello, I'm doing a project to send information from multiple serial ports over TCPIP network.
The approach I am using is as follows:
Use BackgroundWorker for each serial port that is used to capture the information received.
I use a common method to treat the information received and stored in a queue using locks.
Queue _cola = new Queue();
private void bw_DoWork(object sender, DoWorkEventArgs e)
{
BackgroundWorker bw = sender as BackgroundWorker;
string port = (string)e.Argument;
SerialPort sprt = new SerialPort(port);
sprt.BaudRate = 4800;
sprt.Parity = Parity.None;
sprt.StopBits = StopBits.One;
sprt.DataBits = 8;
sprt.Handshake = Handshake.None;
try
{
sprt.Open();
}
catch (Exception)
{
MessageBox.Show("Check port");
return;
}
while (!bw.CancellationPending)
{
string indata = sprt.ReadLine();
lock (_cola)
{
_cola.Enqueue(indata);
}
BeginInvoke((Action)(() = UpdateGraph(port)));
}
sprt.Close();
}
private void UpdateGraph(string port)
{
lock (_cola)
{
string text = Leer();
rtbOutput.AppendText(text );
rtbOutput.ScrollToCaret();
}
}
I found that if I open several ports and FIFO is slower getting data extracting data, the program is "locked." So far all I do is get the information even RichTextBox, but the purpose is to send this data via socket to another computer.
I understand that I should make a thread to avoid these locks but how should do so within the BackgroundWorker?
modified 13-Mar-13 5:44am.
|
|
|
|
|
Sir i just wanted to know the code for K-means Clustering on text documents !!
As the code is available in C#!
but I am not able to get it!
and I am new to this site!
So can anybody help me please!
Thanks a lot!
|
|
|
|
|
sunny funny wrote: I am new to this site!
And what does that have to do with being able to Google[^]?
|
|
|
|
|
Using .Net Framework 4.0 VS2010
I am trying to setup a parent task with child task (task1) to run x number (100) of task then run a separate task (task2) 1 time then continue running task1, etc. continuous loop until total task (1000) are complete. Can I do this using the ContinueWith statement, can someone please give me an example or point me to one that shows how to do this.
Any help will be greatly appreciated,
Michael
|
|
|
|
|
I would have a read of this MSDN Task Parallelism (Task Parallel Library)[^]
It gives many example of the different ways to execute a Task
Lobster Thermidor aux crevettes with a Mornay sauce, served in a Provençale manner with shallots and aubergines, garnished with truffle pate, brandy and a fried egg on top and Spam - Monty Python Spam Sketch
|
|
|
|
|
Hello Guy , I want ask a question . you make a program for Retreiving a list of network computer names using C# but I wonder do retreving a list computer with wireless connection . How do I make it ?
|
|
|
|
|
|
this issue relevant by the local network so wired connection.I want this connection is wireless .
|
|
|
|
|
There is no difference in Retreiving a list of network computers, doesn't matter if the connection is wired or not.
------------------------------
Author of Primary ROleplaying SysTem
How do I take my coffee? Black as midnight on a moonless night.
War doesn't determine who's right. War determines who's left.
|
|
|
|
|
AFAIK, you can't tell is a connection is wired or wireless without asking your specific router.
It presents an IP presence to the world - it does not distinguish between the connection methods.
So there are two ways to do it:
1) Tie your code to your specific router and find a way to ask that. This will be dependant on the specific make and model of router you are talking to.
2) Slightly less specific would be to set your router to use two different address ranges for wired and wireless devices - again this will probably depend on your router, but it may be possible if you use a different DCHP controller.
If you get an email telling you that you can catch Swine Flu from tinned pork then just delete it. It's Spam.
|
|
|
|
|
Hi
I want to insert data from some text box to table of sqldatabase but some field is int and some one is nvarchar how to convert text of text box to them i do below code but i have
constr = "Data Source=SAFA4-PC;Initial Catalog=StudentDb;Integrated Security=True";
System.Data.SqlClient.SqlConnection Conn = new System.Data.SqlClient.SqlConnection();
Conn.ConnectionString = constr;
Conn.Open();
System.Data.SqlClient.SqlCommand Comm = new System.Data.SqlClient.SqlCommand();
Comm.CommandText = "insert into Tbl_Student (Code ,Name ,LastName ,CityCode ,Address ,BirthDay ,FatherName ,ID,CodeMeli,tel ) values( @Code,@Name,@LastName,@FatherName,@Id,@MeliCode,@Tel,@Address,@BirthDay,@CityCombo)";
Comm.CommandType = System.Data.CommandType.Text;
Comm.Connection = Conn;
Comm.Parameters.Add("@Code", SqlDbType.Int);//, int.Parse(StudentCode.Text));
Comm.Parameters["@Code"].Value = int.Parse(StudentCode.Text);
Comm.Parameters.Add("@Name", SqlDbType.NVarChar);//Name.Text);
Comm.Parameters["@Name"].Value = Name.Text;
Comm.Parameters.Add("@LastName", SqlDbType.NVarChar);// LastName.Text);
Comm.Parameters["@LastName"].Value = LastName.Text;
Comm.Parameters.Add("@FatherName", SqlDbType.NVarChar);// FatherName.Text);
Comm.Parameters["@FatherName"].Value =FatherName.Text;
Comm.Parameters.Add("@Id", SqlDbType.Int); //int.Parse(Id.Text));
Comm.Parameters["@Id"].Value = int.Parse(Id.Text);
Comm.Parameters.Add("@MeliCode",SqlDbType.Int);
Comm.Parameters["@MeliCode"].Value = int.Parse(MeliCode.Text);
Comm.Parameters.Add("@Tel",SqlDbType.Int);
Comm.Parameters["@Tel"].Value = int.Parse(Tel.Text);
Comm.Parameters.Add("@Address",SqlDbType.NVarChar);
Comm.Parameters["@Address"].Value = Address.Text;
Comm.Parameters.Add("@BirthDay", SqlDbType.Char);// BirthDay.Text);
Comm.Parameters["@BirthDay"].Value = BirthDay.Text.ToString();
Comm.Parameters.AddWithValue("@CityCombo", CityCombo.ValueMember);
Comm.ExecuteNonQuery();
Conn.Close();
this error :
Conversion failed when converting the nvarchar value 'd' to data type int.
Please help me
|
|
|
|
|
The error is here
Quote: Comm.CommandText = "insert into Tbl_Student (Code ,Name ,LastName ,CityCode ,Address ,BirthDay ,FatherName ,ID,CodeMeli,tel ) values( @Code,@Name,@LastName,@FatherName,@Id,@MeliCode,@Tel,@Address,@BirthDay,@CityCombo)";
you are assigning
CityCode = @FatherName,
Address = @Id
BirthDay = @MeliCode
FatherName = @Tel
ID = @Tel
CodeMeli = @Address
tel = @BirthDay
and @CityCombo is extra.
check the order and insert in proper order. then it will work.
Vande Matharam - Jai Hind
|
|
|
|
|
Request you not to crosspost.
Same was asked in Q&A.
|
|
|
|
|
Beyond that, some data types were chosen wrongly.
A "Telephone number" is not an int, even when it contains didgits only: it can start with a "0", - and it could be bigger than 2^31 (10 digits or more).
"BirthDay" ought to be a DateTime, not a string.
And the "ID" ought to be generated by the SQL Server, not by the client.
|
|
|
|
|
1)We have developed a library to use it with our software & we build it as DLL
2)We developed a application using our library
Now what I need that no other user can use my library in his application for example when i give my application to end user that library is going to be added in setup, and if we dont protect it , any user can use it as reference in a .net project and can use my library and develop his own program , I need some thing that only my application will have access to my library and no other program can use it as reference and access its features
|
|
|
|
|
Please don't repost the same question.
Use the best guess
|
|
|
|
|
In order to do this, you are looking at licensing. There's a good explanation of it here[^].
|
|
|
|
|
A simple - but not very secure - method is to check the running application. If some code in your dll is called, and the running application is not your executable, throw some exception or let the application hang or randomly return wrong results...
Make sure you do not happen to hurt yourself when you use such methods.
|
|
|
|
|
1)We have developed a library to use it with our software & we build it as DLL
2)We developed a application using our library
Now what I need that no other user can use my library in his application for example when i give my application to end user that library is going to be added in setup, and if we dont protect it , any user can use it as reference in a .net project and can use my library and develop his own program , I need some thing that only my application will have access to my library and no other program can use it as reference and access its features
|
|
|
|
|
Hi All
I have a collection of pages where in each page I need to replace the reference of a control with some
other control....
Following is the line of code that I need to replace on every aspx page and there are about 90 + pages :
<%@ Register Src="../Application_Controls/Nonterm_Controls/CommonBookingEngineNonterm.ascx".
How can this be done programatically.Any help will be appreciated...
Thanks in Advance
Sumit
|
|
|
|
|
You wouldn't do this programatically - that would be complete overkill. All you you need do is a global find and replace in Visual Studio.
|
|
|
|
|
Hi,
Is it possible to download a file by passing it path to C# class library?
|
|
|
|
|
Sure. Why wouldn't it be?? Code is code. It doesn't matter if it's in a .DLL or an .EXE.
|
|
|
|
|
Ok but HttpResponse is not available in .cs files right? Can u please let me know whether am understanding it wrongly
|
|
|
|
|
Member 9617037 wrote: HttpResponse is not available in .cs Why not, it's just another .NET class? Or do you really mean HttpWebResponse [^]?
Use the best guess
|
|
|
|