Handle Message Responses Over (async) Network Communication?
Jul 19, 2009
I'm writing an app that sends messages over a network to another PC that processes the message and sends back a reply (e.g. a boolean or some other data). My network communication subs (based on WCF) just give me the ability to send a message to the other PC and process any received messages.The issue is that any response received is processed by my designated network message event handler sub, but I have no way of feeding it back to the sub that called for the original message to be sent.
[Code]...
View 1 Replies
ADVERTISEMENT
Jul 20, 2009
I'm writing an app that sends messages over a network to another PC that processes the message and sends back a reply (e.g. a boolean or some other data). My network communication subs (based on WCF) just give me the ability to send a message to the other PC and process any received messages. The issue is that any response received is processed by my designated network message event handler sub, but I have no way of feeding it back to the sub that called for the original message to be sent.
To quickly illustrate, the situation is something like this:
Private Function NetSendMessage(ByVal message As String) As Boolean
'Send network message to PC with device connected
'....
'returns true if message sent
End Function
[Code] .....
I was thinking along the lines of maybe add a NetSendReceive function that, say, MoveRightWheel could call; NetSendReceive would call NetSendMessage, monitor the message queue for its response (perhaps via a delegate/IAsyncResult), and then return the response message (to MoveRightWheel, which would be waiting for it).
View 1 Replies
Aug 18, 2009
Here is my idea so far: I have a bunch of computers connected in a local network. One of them is a MySQL server, one will have a vb.NET program wich will act as a "second server" and the rest will be different clients. What I want to do is that the "second server" will send out some kind of message or network package to some of the clients in the network, and they will execute a code based on what message it is, or what kind of package it is. I'll give you a simple example:
[Code]...
View 6 Replies
May 2, 2011
I am starting a new project in VB, a card game modelled to be similar to a real card game.
I have the majority of the program planned out and have even started coding parts of it; my problem comes with the networking.This is a real-time card game (not turn-based) and I want to be able to play with real people (family mostly, so over LAN is what I'm after).
I have tried searching for code samples but I everything I have found seems more complicated than I feel is required for the task, introducing a lot of new concepts and not explaining them.
What I'm after is a simple way to exchange the information in real-time, I don't care so much for efficiency (at the moment) just ease of use - though if I need to wade through a heap of documentation I will. A perfect answer would tell me what the names of some of the controls/methods that would be appropriate are, even if it just re-affirms a bit of the complexity, you do not have to detail anything if you don't want to I just feel a bit at loss as to what exactly it is I am looking for!
View 3 Replies
Mar 28, 2010
My issue, however, is connecting to the wireless laptops as well.
[code...]
I need to grab a list of all networked computers, and I definitely include systems on the wireless
network in that list. I'm just not sure how to approach this. Being able to enumerate through a
'tree' of all networks and systems available would be a major plus.
View 5 Replies
Jun 3, 2010
I'm trying to write a 'developer friendly' wrapper for the Windows API EnumWindows - the problem is that the API uses a callback function that gets invoked on another thread, where as I want my wrapper function to simplify this and make it more useful by working like any other normal synchronous function and just returning a value.
Now if the API just called the callback once that would be fine, as I would just call the API and make the wrapper function wait until it got a signal from the callback function telling it to continue... but the API calls the callback function over 100 times (once for every window handle that exists). The biggest problem is that there is nothing that indicates that any particular call to this callback function is the last one, so my wrapper function has no idea when it is safe to continue and return the list of window handles to the caller.
The only solution I could think of is to do this:
1. The wrapper function calls the API and starts a timer that waits 2 seconds before it raises the Elapsed event. The wrapper function then pauses until it receives a signal (ManualResetEvent)
2. Each time the callback function is raised by the API on a different thread, it stops the timer (so this is before the 2 seconds have elapsed), adds the current window handle that was passed in by the API to the list of handles, then starts the timer again.
3. If the timer reaches its 2 second interval then it is assumed that we are at the end of the windows because otherwise the callback would have stopped the timer. So the timer's Elapsed event handler is what signals the original thread (that the wrapper function is executing on) to continue as we now have a complete list of windows to return.
This works fine and does exactly what I want... but I dont like it.
I dont like forcing the caller to wait an extra 2 seconds after the API has done its last callback but more importantly I dont like assuming that the API will never take longer than 2 seconds between callbacks. In reality on my PC it is never anywhere near that long between callbacks, it is something like 200 miliseconds, but I have no idea how long it would be on a slower PC and I want this to be completely reliable.
[URL]
View 14 Replies
Dec 14, 2011
I am creating a web chat application using asp.net vb. I have got the chat system to work as messages are sent and relayed back to the clients. But there was something i noticed but never thought it would be a problem. I am from England and the chat application is sitting on servers in America and noticed when the message displayed the time, the times were situated in American time zones. How would i go about setting the timezones that will correspond to there country timezones.So if the message display 17:00 American time, then the message sent to England should display 12:00 English time.
View 1 Replies
Apr 29, 2009
I have a program running in many machines in a network. The program reads a Sql database, and there's a table showing one table in a DataGridView in each computer from the same DB stored on the server. The same table in all the computers. What I want to do is, every time one computer changes something in the table, to update every table in all the computers.
Every program writes an entry in the database to know that they are connected to the DB. So any program can know who the other computers are.
How can all the computers know that there was a change in the table? (the idea is the get the changes quickly)
View 2 Replies
Oct 20, 2010
to do a program that can send a message in other computerthru LaN or Computer NetworkExample im in Server and i will send it is \PC-01here is the picture i design it but i don't know the code
View 1 Replies
Apr 22, 2009
I have couple of questions with datagridview 1.How to handle the Enter-Key when the user edited the columns value.?I mean, without changing the columns values we can suppress the enter-key by following. No problem. It's working Fine.
Private Sub DataGridView1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles DataGridView1.KeyDown
If e.KeyCode = Keys.Enter Then
Dim numCols As Integer = DataGridView1.ColumnCount
Dim numRows As Integer = DataGridView1.RowCount
[code]....
But after if I select any one column & changed the values then if I press <Enter> it's moving to next row. But I want to move it to next column..
2. With Datagridview - I have a column for date. and it's defaut format is mm/dd/yyyy. But Iam looking to read the date by "dd/mm/yyyy" format. Also if the user feed wrong date format then it has to display my Error message. "INVALID DATE"
View 2 Replies
Nov 2, 2009
I have this codes here whereby my objective is to develop a writing network applications of programming, a means of sending data to a message board(messaging system). My problem is I couldn't connect it to the server's IP address and port num to send a data through a message board. However I could only display at Form2 txtReceive.
Text = HexConvert.Data_Asc_Hex(sData),
Whereby this code could only convert whatever data(txtSend) that is being typed in, could then convert hex decimal into a textbox(txtReceive). The final result that I would want to achieve is to be able to display the at the textbox(txtReceive) is the <"message protocol"> & <"hex message that is being typed"> & <"parity bit"> into the txtReceive box.
Form form 1, my codes are....
Imports System.Net.Sockets
Imports System.IO
Public Class Form1
Const portNo As Integer = 1234
Dim client As TcpClient
[Code] .....
View 2 Replies
Jun 11, 2011
how to send a message to another computer in my companys network using visual studio 2008...I would like to be able to list all the computer names on the network and select certain ones and send them a message that would pop up on their screen
View 3 Replies
Aug 27, 2011
I'm trying to develop an app that will let me manage all my domain names through enom and I'm getting stuck here. I'm up to the point where I can get a response from the server but I'm not sure how to grab just the responses I need to get my app to do what
I want it to do. In this example, I'm looking to grab just the "RRPText" response from their servers in VB, you can see below what responses I'm getting:
[URL]
View 1 Replies
Feb 16, 2011
I've got a small utility I use to communicate with Yahoo's APIs. Their servers return all the responses in JSON. Is there an easy way to parse this into its base form when you don't necessarily know what will be in the response?
[Code]...
View 1 Replies
May 19, 2009
im trying to make a project its a form and it send what u filled out to my email how do i make that?
View 2 Replies
Nov 28, 2009
I have two Buttons, button A and button B. After 100 clicks on button A a pictures is displayed and after 10 clicks on button B another picture is displayed. I wanna have two different timers as to timing each response (button a or button B respectively) without these two timers to be timing both these responses. I try to do this for over one month!
View 1 Replies
Feb 23, 2012
I've got a simple asp.net calender which highlights and enters the users name on the days they have requested a holiday. However the newest request overwrites the name of the old request rather than showing multiple names. The code as follows:
Protected Sub Calendar1_DayRender(ByVal sender As Object, _
ByVal e As System.Web.UI.WebControls.DayRenderEventArgs) _
Handles Calendar1.DayRender
Dim nextDate As DateTime
[code]....
View 1 Replies
Nov 18, 2011
I have a .NET 2.0 *.dll that calls My.Computer.Network.Ping(). The *.dll is then run out of an *.exe via AppDomain.CreateDomain() and Invoke(). The problem is that this works just fine under Windows XP but under Windows 7, I get an exception saying that no network connection is available. I tried the Ping() call out of a small console application under Windows 7 and it works just fine.
[Code]....
View 6 Replies
Jul 15, 2010
I have two methods on the page. One AddMessageToInboxOutbox(params[]) and other one SendNewMessageMail(params[]).
Once user sends an message to other other first message is added to DB and then sent to recipient's email. Sometimes SMTP is heavy loaded and it takes up to 5 seconds to get answer from it. I want to enclose SendNewMessageMail(params[]) with async call using other thread or something. I have never done that.
How do i perform this action right in ASP.NET?
View 2 Replies
Nov 3, 2011
[Code]...
In my scenario the Button_Click is a command delegate in the VM, and the Thread.Sleep is some long-running process (about 2-10 seconds). I want, that when the user calls the command, it should immediately update the UI disabling the button so the user cannot execute it while it's running, then execute that operation, then, when operation completed, unblock the button.
[Code]...
View 3 Replies
Jun 12, 2009
I have a bunch of operations that need to be executed simultaneously. For this I'm using the thread pool to execute the tasks. I'd like to know if it's possible to consume some sort of Async Callback (similar to BackgroundWorker.DoWorkComplete) when each thread is finished. The reasoning behind this is that I have a windows service running that uses IPC to update a GUI and I need to know the time at which each specific thread finishes I've used background workers to do a set of tasks and they work perfectly, however, they take longer than I would like. I've timed the execution on my BGW method for a designated number of said tasks and it took 27 seconds, and the same set of tasks takes 4 seconds using the threadpool method. I've also tried using managed threads, to the same effect as the background workers.
View 5 Replies
Apr 20, 2012
Async Sub like this: Dim f As Func(Of Task) = Async Sub() End Sub Produces compiler error: error BC36670: Nested sub does not have a signature that is compatible with delegate 'System.Func(Of System.Threading.Tasks.Task)'.Equivalent C# code compiles fine:
Func<Task> f = async () => { };Rewriting Async Sub into Async Function make code works.
Why does Async Sub() is not convertible to delegate types with return value of type Task?
View 1 Replies
Oct 1, 2011
I think this is a simple question for you, but I don't understand other cases of webRequests, so I asked here: How can I make this webRequest asynchronous?
Dim sBuffer As String
Dim oRequest As WebRequest = WebRequest.Create(url)
oRequest.Method = "GET"
Dim oResponse As WebResponse = oRequest.GetResponse()
Dim oStream As New StreamReader(oResponse.GetResponseStream())
[Code] .....
View 1 Replies
Jul 15, 2011
Relevant to Silverlight 5 / Async CTP
I want to create an asynchronous function that initiates a layout update and then Awaits for the layout update to complete. Something like:
Private Async Function UpdateLayoutRoot() As Task
LayoutRoot.UpdateLayout()
Await LayoutRoot.LayoutUpdated <--- (NOT valid but shows desired outcome)
End Function
How can this be done? More generally, how can you use Await to wait for existing events?
View 2 Replies
Mar 31, 2011
I have some code that iterates a few 100 urls and requests the data from the web.It looks something like this
for each url in urls
Dim hwr = CType(WebRequest.Create(url), HttpWebRequest)
Dim rq = New ReqArgs
[code]....
How come the BeginGetresponse line takes about 2-3 seconds to complete before going to dim a=1?. Actually I debugged and I see that the FinishWebRequest procedure runs completely before the Dim a=1 is reached.So is this async?I'm not earning any time by using the async. am I? Or is there a different way to do this?The point is that the main sub should fire off 300 requests and return control to the UI, then the FinishWebRequest should process them slowly on its own thread and own time , as the requests come in.How do I do that?Btw, the main sub is running in a BackgroundWorker, but I checked with out the BackgroundWorker and the problem is the same?
View 1 Replies
Jun 14, 2012
I have a WPF application in which i have to do a long running task (basically reading from network). Just to give you a snapshot I am doing the following thing on button click
Dim t As Task(Of String) = Task.Factory.StartNew(Of String)(Function()
'Thread.sleep is simulating long running task that will make UI unresponsive
Thread.Sleep(10000)
[Code].....
I cannot use Event based async methodology because the reading API actually exist in a dll which i refer in my program, that contains a function Public function ReadFromNetwork() as String. This API is making an async call to network to read a long string and return to UI. So, in short i m doing TextBlock1.Text = ExternalDll.ReadFromNetwork().
but the problem is that even if i use Task asynchrony, the UI is still unresponsive.
View 3 Replies
Nov 24, 2011
I've run into a bit of a problem using Async ping. Basically, I want to ping computers in the list before I run the next bit of my program. The computers who I can ping are added to a list and that is used in a background worker. Trouble is can't seem to work out how to wait until after pinging ALL computers in the list, either successful or timed-out. Is there something a long the lines of 'If Async Ping is running'?
Private Sub pingCompleted(ByVal sender As Object, ByVal e As System.Net.NetworkInformation.PingCompletedEventArgs)
If e.Reply.Status = Net.NetworkInformation.IPStatus.Success Then
complist.Add(e.UserState)
Else
'do nothing
End If
End Sub
I need the next bit to wait because if 'complist' is changed while it's being used I get collection errors.
View 7 Replies
Dec 21, 2009
I am working on moving a project from VB6 to VB 2008 Express. [Code] When I connect to mysql db in VB6, I connect using adAsynConnect. This way, I have a "Loading..." animation display while a connection is attempted. Is there a way to do this in 2008 Express? Or something similar I could read up on?
View 4 Replies
Jul 25, 2011
I'm using vb .net 2008 with 3.5 framework. (the following 2 classes are put in a DLL that i import in a main application)
Server class:
Code:
Imports System.Xml
Imports System.Net.Sockets
Imports System.Text
Imports System.Net
[code]....
Basically in my main application i am instantiating the client class from this dll, as well as the server one. On the client form i got a "send data" (SendFISA sub) and a "connect" button. After connecting the client and clicking on the "send data" i am sending to the server a string formed of some information created when instantiating the client class from the dll (i can't make that type of data public, but i'm just using a constructor to assign values to a class object, nothing special).
Now, when the server receives the data sent by "send data" button click it responds with "PKG_SENT" corresponding to the "FISASENT" string terminator(in the module) of the string that was sent. The "WRONG_MSG" constant is for when the string terminator is different from the 2 from above.
On the local disk, if the server cannot be reached, the client saves an xml file with this data. In the dll i made a timer that ticks every 5 seconds and checks to see if there is any xml file on the disk and sends it to the server if the connection is ok (trimiteXML sub). The server would respond with "XML_SENT" corresponding to the string terminator "XMLSENT"(in the module) appended to the read string from the xml file. After the file is sent it is deleted from the local dir.
The problem occurs when i click "send data" AND there are XML files to be sent from the disk. I believe they are interpreted by the server somehow at the same time because the message is neither "PKG_SENT" nor "XML_SENT", but it becomes a combination of the "WRONG_MSG_TYPE" and "XML_SENT", "XML_SENTG_TYPE". I have no idea why this is happening and i basically want the socket to wait with sending the files from the disks until the "send data" finishes.
View 9 Replies
Nov 24, 2009
I have a console app that is supposed to async call a web service...i don't get any errors but the completed handler doesn't seem to complete correctly. I have a subroutine with a loop that is supposed to fire off say 6 seperate calls to another routine that calls the service. The completed event handler routine puts data into the database..If i put a thread.sleep under the call to the routine calling the web service. The completed event handler fires but only one record is put in the database instead of the hundreds expected and only that one webservice call appears to fire.I should mention that this works as expected when calling the sync method of the web service within a console app and the asyc calls work as expected from a windows forms app. I just need it to work async within a console app..
View 1 Replies