473,765 Members | 1,965 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Long Process

I have a long process I run that needs to be complete before the user can continue. I can change the cursor to an hourglass, but I want to update the Status Strip on the bottom during the process. I set the statusstrip label to "Downloading... ", but it will not show up on the form. I need to display this message before it starts the process. I can put a thread.sleep for 1 second after I do the initial process, but that seems sloppy to me. Any suggestions? Here is my code launched from a button click:
'update the label--This does not show because the process starts before the UI updates
slDBList.Text = "Retrieving Databases..."Tr yMe.Cursor = Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case of an error boolServersLoad ed = FalseboolDBLoad ed = False'clear the servers list cbServers.DataS ource = Nothing'clear the databases list dbDatabases.Dat aSource = NothingIf chkSort.Checked = True ThenlstServers = GetSqlServers(T rue)ElselstServ ers = GetSqlServers(F alse)End IfcbServers.Dat aSource = lstServers'set to true to enabled the selected index change on the dropdown boolServersLoad ed = TrueslDBList.Te xt = ""Catch ex As ExceptionMessag eBox.Show("Erro r loading server list. Error: " & ex.ToString, "Data Error", MessageBoxButto ns.OK, MessageBoxIcon. Error)boolServe rsLoaded = FalseslDBList.T ext = ""FinallyMe.Cur sor = Cursors.ArrowEn d Try
Jun 27 '08 #1
32 1706

Run the task on another thread. If you are using .Net 2.0 or later
(VS2005/VS2008), this is fairly easy with the BackgroundWorke r class.

http://msdn.microsoft.com/en-us/libr...undworker.aspx

Do not run the task on the UI thread or you will get the results you
are currently seeing.

/Joergen Bech

On Wed, 21 May 2008 12:09:09 -0600, "John Wright"
<ri**********@h otmail.comwrote :
>I have a long process I run that needs to be complete before the user can continue. I can change the cursor to an hourglass, but I want to update the Status Strip on the bottom during the process. I set the statusstrip label to "Downloading... ", but it will not show up on the form. I need to display this message before it starts the process. I can put a thread.sleep for 1 second after I do the initial process, but that seems sloppy to me. Any suggestions? Here is my code launched from a button click:
'update the label--This does not show because the process starts before the UI updates
slDBList.Tex t = "Retrieving Databases..."Tr yMe.Cursor = Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case of an error boolServersLoad ed = FalseboolDBLoad ed = False'clear the servers list cbServers.DataS ource = Nothing'clear the databases list dbDatabases.Dat aSource = NothingIf chkSort.Checked = True ThenlstServers = GetSqlServers(T rue)ElselstServ ers = GetSqlServers(F alse)End IfcbServers.Dat aSource = lstServers'set to true to enabled the selected index change on the dropdown boolServersLoad ed = TrueslDBList.Te xt = ""Catch ex As ExceptionMessag eBox.Show("Erro r loading server list. Error: " & ex.ToString, "Data Error", MessageBoxButto ns.OK, MessageBoxIcon. Error)boolServe rsLoaded = FalseslDBList.T ext = ""FinallyMe.Cur sor = Cursors.ArrowEn d Try
Jun 27 '08 #2
On May 21, 9:09*pm, "John Wright" <riley_wri...@h otmail.comwrote :
I have a long process I run that needs to be complete before the user can continue. *I can change the cursor to an hourglass, but I want to update the Status Strip on the bottom during the process. *I set the statusstrip label to "Downloading... ", but it will not show up on the form. *I need to display this message before it starts the process. *I can put a thread.sleep for 1 second after I do the initial process, but that seems sloppy to me.*Any suggestions? *Here is my code launched from a button click:

'update the label--This does not show because the process starts before the UI updates
slDBList.Text = "Retrieving Databases..."Tr yMe.Cursor = Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case of an error boolServersLoad ed = FalseboolDBLoad ed = False'clear the servers list cbServers.DataS ource = Nothing'clear the databases list dbDatabases.Dat aSource =NothingIf chkSort.Checked = True ThenlstServers = GetSqlServers(T rue)ElselstServ ers = GetSqlServers(F alse)End IfcbServers.Dat aSource = lstServers'set to true to enabled the selected index change on the dropdown boolServersLoad ed = TrueslDBList.Te xt = ""Catch ex As ExceptionMessag eBox.Show("Erro r loading server list. Error: " & ex.ToString, "Data Error", MessageBoxButto ns.OK, MessageBoxIcon. Error)boolServe rsLoaded = FalseslDBList.T ext =""FinallyMe.Cu rsor = Cursors.ArrowEn d Try
Hi,
Could you put the code above into BackgroundWorke r's Do_Work event sub
and run it using RunWorkerAsync method?
And just set statusStrip text in button_click event.

Like this:
Private Sub Button1_Click (ByVal sender As System.Object, ByVal e As
System.EventArg s) Handles Button1.Click

StatusStrip1.te xt = "Downloading... "
BackgroundWorke r1.RunWorketAsy nc()

End Sub

Private Sub BackgroundWorke r1_DoWork(ByVal sender As System.Object,
ByVal e As System.Componen tModel.DoWorkEv entArgs) Handles
Backgroundworke r1.DoWork

' Here is the code that you sent in your original post

End Sub
...should work fine.

Thanks,

Onur Güzel
Jun 27 '08 #3
On 21 maio, 15:19, Joergen Bech <jbech<NOSPAM>@ <NOSPAM>post1.t ele.dk>
wrote:
Run the task on another thread. If you are using .Net 2.0 or later
(VS2005/VS2008), this is fairly easy with the BackgroundWorke r class.

http://msdn.microsoft.com/en-us/libr...tmodel.backgro...

Do not run the task on the UI thread or you will get the results you
are currently seeing.

/Joergen Bech

On Wed, 21 May 2008 12:09:09 -0600, "John Wright"

<riley_wri...@h otmail.comwrote :
I have a long process I run that needs to be complete before the user can continue. I can change the cursor to an hourglass, but I want to update the Status Strip on the bottom during the process. I set the statusstrip label to "Downloading... ", but it will not show up on the form. I need to display this message before it starts the process. I can put a thread.sleep for 1 second after I do the initial process, but that seems sloppy to me. Any suggestions? Here is my code launched from a button click:
'update the label--This does not show because the process starts before the UI updates
slDBList.Text = "Retrieving Databases..."Tr yMe.Cursor = Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case of an error boolServersLoad ed = FalseboolDBLoad ed = False'clear the servers list cbServers.DataS ource = Nothing'clear the databases list dbDatabases.Dat aSource = NothingIf chkSort.Checked = True ThenlstServers = GetSqlServers(T rue)ElselstServ ers = GetSqlServers(F alse)End IfcbServers.Dat aSource = lstServers'set to true to enabled the selected index change on the dropdown boolServersLoad ed = TrueslDBList.Te xt = ""Catch ex As ExceptionMessag eBox.Show("Erro r loading server list. Error: " & ex.ToString, "Data Error", MessageBoxButto ns.OK, MessageBoxIcon. Error)boolServe rsLoaded = FalseslDBList.T ext = ""FinallyMe.Cur sor = Cursors.ArrowEn d Try
You also can try the controls/form Refresh method, which forces it to
be redraw.

Thiago
Jun 27 '08 #4
On 2008-05-21, John Wright <ri**********@h otmail.comwrote :
This is a multi-part message in MIME format.

------=_NextPart_000_ 0354_01C8BB3B.7 9B811B0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

I have a long process I run that needs to be complete before the user =
can continue. I can change the cursor to an hourglass, but I want to =
update the Status Strip on the bottom during the process. I set the =
statusstrip label to "Downloading... ", but it will not show up on the =
form. I need to display this message before it starts the process. I =
can put a thread.sleep for 1 second after I do the initial process, but =
that seems sloppy to me. Any suggestions? Here is my code launched =
from a button click:
'update the label--This does not show because the process starts before =
the UI updates
slDBList.Text =3D "Retrieving Databases..."Tr yMe.Cursor =3D =
Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case =
of an error boolServersLoad ed =3D FalseboolDBLoad ed =3D False'clear the =
servers list cbServers.DataS ource =3D Nothing'clear the databases list =
dbDatabases.Dat aSource =3D NothingIf chkSort.Checked =3D True =
ThenlstServers =3D GetSqlServers(T rue)ElselstServ ers =3D =
GetSqlServers(F alse)End IfcbServers.Dat aSource =3D lstServers'set to =
true to enabled the selected index change on the dropdown =
boolServersLoad ed =3D TrueslDBList.Te xt =3D ""Catch ex As =
ExceptionMessag eBox.Show("Erro r loading server list. Error: " & =
ex.ToString, "Data Error", MessageBoxButto ns.OK, =
MessageBoxIcon. Error)boolServe rsLoaded =3D FalseslDBList.T ext =3D =
""FinallyMe.Cur sor =3D Cursors.ArrowEn d Try
------=_NextPart_000_ 0354_01C8BB3B.7 9B811B0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHT ML 6.00.2900.3314" name=3DGENERATO R>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2>I have a long process I run that needs =
to be=20
complete before the user can continue.&nbsp; I can change the cursor to =
an=20
hourglass, but I want to update the Status Strip on the bottom during =
the=20
process.&nbsp; I set the statusstrip label to "Downloading... ", but it =
will not=20
show up on the form.&nbsp; I need to display this message before it =
starts the=20
process.&nbsp; I can put a thread.sleep for 1 second after I do the =
initial=20
process, but that seems sloppy to me.&nbsp; Any suggestions?&nb sp; Here =
is my=20
code launched from a button click:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>'updat e the label--This does not show =
because the=20
process starts before the UI updates</FONT></DIV><PRE>slDBLi st.Text =3D =
"Retrieving Databases..."</PRE><PRE>Try</PRE><PRE>Me.Cur sor =3D =
Cursors.WaitCur sor</PRE><PRE>Dim lstServers As List(Of =
String)</PRE><PRE>'set to false in case of an error =
</PRE><PRE>boolSe rversLoaded =3D False</PRE><PRE>boolDB Loaded =3D =
False</PRE><PRE>'clear the servers list </PRE><PRE>cbServ ers.DataSource =
=3D Nothing</PRE><PRE>'clear the databases list =
</PRE><PRE>dbData bases.DataSourc e =3D Nothing</PRE><PRE>If =
chkSort.Checked =3D True Then</PRE><PRE>lstSer vers =3D =
GetSqlServers(T rue)</PRE><PRE>Else</PRE><PRE>lstSer vers =3D =
GetSqlServers(F alse)</PRE><PRE>End If</PRE><PRE>cbServ ers.DataSource =3D =
lstServers</PRE><PRE>'set to true to enabled the selected index change =
on the dropdown </PRE><PRE>boolSe rversLoaded =3D =
True</PRE><PRE>slDBLi st.Text =3D ""</PRE><PRE>Catch ex As =
Exception</PRE><PRE>Messag eBox.Show("Erro r loading server list. Error: " =
&amp; ex.ToString, "Data Error", MessageBoxButto ns.OK, =
MessageBoxIcon. Error)</PRE><PRE>boolSe rversLoaded =3D =
False</PRE><PRE>slDBLi st.Text =3D =
""</PRE><PRE>Finall y</PRE><PRE>Me.Cur sor =3D Cursors.Arrow</PRE><PRE>End =
Try</PRE></BODY></HTML>

------=_NextPart_000_ 0354_01C8BB3B.7 9B811B0--
Take a look at the BackgroundWorke r component.

--
Tom Shelton
Jun 27 '08 #5
On May 21, 9:26*pm, kimiraikkonen <kimiraikkone.. .@gmail.comwrot e:
On May 21, 9:09*pm, "John Wright" <riley_wri...@h otmail.comwrote :
I have a long process I run that needs to be complete before the user can continue. *I can change the cursor to an hourglass, but I want to updatethe Status Strip on the bottom during the process. *I set the statusstriplabe l to "Downloading... ", but it will not show up on the form. *I need to display this message before it starts the process. *I can put a thread.sleep for 1 second after I do the initial process, but that seems sloppy to me. *Any suggestions? *Here is my code launched from a button click:
'update the label--This does not show because the process starts before the UI updates
slDBList.Text = "Retrieving Databases..."Tr yMe.Cursor = Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case of an error boolServersLoad ed = FalseboolDBLoad ed = False'clear the servers list cbServers.DataS ource = Nothing'clear the databases list dbDatabases.Dat aSource = NothingIf chkSort.Checked = True ThenlstServers = GetSqlServers(T rue)ElselstServ ers = GetSqlServers(F alse)End IfcbServers.Dat aSource = lstServers'set to true to enabled the selected index change on the dropdown boolServersLoad ed = TrueslDBList.Te xt = ""Catch ex As ExceptionMessag eBox.Show("Erro r loading server list. Error: " & ex.ToString, "Data Error", MessageBoxButto ns.OK, MessageBoxIcon. Error)boolServe rsLoaded = FalseslDBList.T ext = ""FinallyMe.Cur sor = Cursors.ArrowEn d Try

Hi,
Could you put the code above into BackgroundWorke r's Do_Work event sub
and run it using RunWorkerAsync method?
And just set statusStrip text in button_click event.

Like this:
Private Sub Button1_Click (ByVal sender As System.Object, ByVal e As
System.EventArg s) Handles Button1.Click

StatusStrip1.te xt = "Downloading... "
BackgroundWorke r1.RunWorketAsy nc()
Sorry for the last line's typo,
BackgroundWorke r1.RunWorkerAsy nc() is the correct one.

Thanks,

Onur Güzel

Jun 27 '08 #6
On Wed, 21 May 2008 11:28:04 -0700 (PDT), Thiago Macedo
<th**********@g mail.comwrote:
>On 21 maio, 15:19, Joergen Bech <jbech<NOSPAM>@ <NOSPAM>post1.t ele.dk>
wrote:
>Run the task on another thread. If you are using .Net 2.0 or later
(VS2005/VS2008), this is fairly easy with the BackgroundWorke r class.

http://msdn.microsoft.com/en-us/libr...tmodel.backgro...

Do not run the task on the UI thread or you will get the results you
are currently seeing.

/Joergen Bech

On Wed, 21 May 2008 12:09:09 -0600, "John Wright"

<riley_wri...@ hotmail.comwrot e:
>I have a long process I run that needs to be complete before the user can continue. I can change the cursor to an hourglass, but I want to update the Status Strip on the bottom during the process. I set the statusstrip label to "Downloading... ", but it will not show up on the form. I need to display this message before it starts the process. I can put a thread.sleep for 1 second after I do the initial process, but that seems sloppy to me. Any suggestions? Here is my code launched from a button click:
>'update the label--This does not show because the process starts before the UI updates
slDBList.Tex t = "Retrieving Databases..."Tr yMe.Cursor = Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case of an error boolServersLoad ed = FalseboolDBLoad ed = False'clear the servers list cbServers.DataS ource = Nothing'clear the databases list dbDatabases.Dat aSource = NothingIf chkSort.Checked = True ThenlstServers = GetSqlServers(T rue)ElselstServ ers = GetSqlServers(F alse)End IfcbServers.Dat aSource = lstServers'set to true to enabled the selected index change on the dropdown boolServersLoad ed = TrueslDBList.Te xt = ""Catch ex As ExceptionMessag eBox.Show("Erro r loading server list. Error: " & ex.ToString, "Data Error", MessageBoxButto ns.OK, MessageBoxIcon. Error)boolServe rsLoaded = FalseslDBList.T ext = ""FinallyMe.Cur sor = Cursors.ArrowEn d Try

You also can try the controls/form Refresh method, which forces it to
be redraw.

Thiago
If the form is on top of all other windows, yes, this can be used to
make sure a message is updated *before* the process is started,
but once the process is running, the UI thread is blocked until
the task has finished.

If another form (from another application, e.g.) is moved across
the form while the task is running, you might be looking at a big,
grey blob instead of a form telling you what it is working on.

Only when the task is done and the UI thread is no longer blocked
does the form get a chance to repaint itself again.

Regards,

Joergen Bech

Jun 27 '08 #7
How about Application.DoE vents ? This might help for processing pending thread.

Mayur H Chauhan
"John Wright" <ri**********@h otmail.comwrote in message news:eT******** ******@TK2MSFTN GP06.phx.gbl...
I have a long process I run that needs to be complete before the user can continue. I can change the cursor to an hourglass, but I want to update the Status Strip on the bottom during the process. I set the statusstrip label to "Downloading... ", but it will not show up on the form. I need to display this message before it starts the process. I can put a thread.sleep for 1 second after I do the initial process, but that seems sloppy to me. Any suggestions? Here is my code launched from a button click:
'update the label--This does not show because the process starts before the UI updates
slDBList.Text = "Retrieving Databases..."Tr yMe.Cursor = Cursors.WaitCur sorDim lstServers As List(Of String)'set to false in case of an error boolServersLoad ed = FalseboolDBLoad ed = False'clear the servers list cbServers.DataS ource = Nothing'clear the databases list dbDatabases.Dat aSource = NothingIf chkSort.Checked = True ThenlstServers = GetSqlServers(T rue)ElselstServ ers = GetSqlServers(F alse)End IfcbServers.Dat aSource = lstServers'set to true to enabled the selected index change on the dropdown boolServersLoad ed = TrueslDBList.Te xt = ""Catch ex As ExceptionMessag eBox.Show("Erro r loading server list. Error: " & ex.ToString, "Data Error", MessageBoxButto ns.OK, MessageBoxIcon. Error)boolServe rsLoaded = FalseslDBList.T ext = ""FinallyMe.Cur sor = Cursors.ArrowEn d Try
Jun 27 '08 #8
On 2008-05-21, John Wright <ri**********@h otmail.comwrote :
When I do this I get a cross thread error. Any ideas?

John
John,

You can't access any of the forms controls in the actual DoWork event.
You need to handle any updates during your work by calling the
ReportProgress method of the backgroundworke r. This will cause the
ProgressChanged event to be raised (assuming you have set the
WorkerReportsPr ogress property to true). In that event it is safe to
access your forms controls.

--
Tom Shelton
Jun 27 '08 #9
On May 22, 1:15 am, Tom Shelton
<tom_shel...@YO UKNOWTHEDRILLco mcast.netwrote:
On 2008-05-21, John Wright <riley_wri...@h otmail.comwrote :
When I do this I get a cross thread error. Any ideas?
John

John,

You can't access any of the forms controls in the actual DoWork event.
You need to handle any updates during your work by calling the
ReportProgress method of the backgroundworke r. This will cause the
ProgressChanged event to be raised (assuming you have set the
WorkerReportsPr ogress property to true). In that event it is safe to
access your forms controls.

--
Tom Shelton

Hi,
Tom is right, and your form elements are getting updated and accessed
during BackgroundWorke r's DoWork event, that's why the reason of error
i guess.

Thanks,

Onur Güzel
Jun 27 '08 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
3372
by: PontiMax | last post by:
Hi, when I press the OK button of my dialog box a long-running task is initiated. Therefore I would like to make visible a div section right after clicking the button where a user-friendly message is displayed... How can this be done? Can I make the section visible via server-side code? Via Response.Write()? Any examples would be appreciated!
18
2210
by: Larry Herbinaux | last post by:
I'm having issues with garbage collection with my long-standing service process. If you could review and point me in the right direction it would be of great help. If there are any helpful documents that you could point me to help me control the GC, then that would be great also. The .Net GC does not cleanup memory of our service process unless it is forced to by another process that hogs memory. · GC Algorithm - This is an issue...
4
1966
by: ImSoLost | last post by:
I'm running a really long process from ASP.NET and need some help... I am making a method call when the user presses a button from my webpage, which goes into a database and parses a file. This process could exceed an hour, so the user is expected to press the button to start the process and minimize the IE window and do other work while the application is processing. Anyway, after a certain period in time, the page becomes "Page could...
1
6025
by: Anonieko | last post by:
Query: How to display progress bar for long running page Answer: Yet another solution. REFERENCE: http://www.eggheadcafe.com/articles/20050108.asp My only regret is that when click the browser back button, it loads the progress bar again. Any solution to this?
14
23170
by: lmttag | last post by:
Hello. We're developing an ASP.NET 2.0 (C#) application and we're trying to AJAX-enable it. We're having problem with a page not showing the page while a long-running process is executing. So, we're looking for a way to display the page with a "please wait..." message while the process is running, and then, when the process is done, update the page with the actual results/page content. We have a page that opens another browser/page...
1
2435
by: walterbyrd | last post by:
I understand that Python has them, but PHP doesn't. I think that is because mod_php is built into apache, but mod_python is not usually in apache. If mod_python was built into apache, would python still have long running processes (LRP)? Do LRPs have to do with a Python interpreter running all the time? Or is it something else? I also understand that LRPs are the reason that shared hosting is less
4
2851
by: commander_coder | last post by:
Hello, I write a lot of CGI scripts, in Python of course. Now I need to convert some to long-running processes. I'm having trouble finding resources about the best practices to do that. I've found a lot of email discussions that say something like, "You need to educate yourself about the differences when you have long- running processes" but I've not had a lot of luck with finding things that explain the differences. I've seen some...
2
1634
by: =?Utf-8?B?QWxwaGFwYWdl?= | last post by:
Hello, I have a class MyWorker. Each time I create a new instance of MyWorker, I queue it to the ThreadPool. So, 1 MyWorker object is pooled and belongs to its thread (there can't have 2 MyWorker in 1 thread from the ThreadPool). When MyWorker is initialized or instanciate, I use an asynchronous delegate to execute a long running process (depending on users, the job can be quicker). So, this async delegate will use or create a new...
2
1798
by: =?Utf-8?B?d2R1ZGVr?= | last post by:
I have a website using windows integrated security, with anonymous access turned off. The site is used to query orders from a database and when the search takes a long time, a windows login box appears. Regardless of what login the user enters into this, it does not accept it and the user is locked out of the system. Our network team and myself have been unable to find out why this is occurring, has anyone else had a similiar problem?...
0
9568
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9399
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10007
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9955
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9833
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6649
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5275
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
3924
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2806
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.