473,394 Members | 1,739 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,394 software developers and data experts.

BUG: Dataset Returned From A XML WebService Containing Error Data Caused Exeption To Be Thrown In A Window Form Application

Hi,

I'm working on a project which includes XML WebServices and Windows Form
application.

The Windows Form application will call the XML WebServices to retrieve data
from database. The data will be returned as DataSet.

Now, here's the problem. On .NET Framework 1.1, if any rows in the dataset
returned contain errors (marked by calling the SetColumnError() method or
setting the RowError property of the DataRow), I get the following error
message in the Windows Form application,

"There is an error in XML doument (x,xxxxxxx)"

If I forced the Windows Form application to run on .NET Framework 1.0,
everything works fine.

Here's the partial code for the WebService project

Code:

<WebMethod()> _
Public Function RetrieveDataSet() As DataSet
Dim ds As New DataSet
Dim dt As New DataTable
Dim row As DataRow
Dim i As Integer

dt.TableName = "TestTable"
dt.Columns.Add("TestColumn1", GetType(String))
dt.Columns.Add("TestColumn2", GetType(Integer))

ds.DataSetName = "TestDataSet"
ds.Tables.Add(dt)

For i = 0 To 10
row = dt.NewRow
row("TestColumn1") = "This is row " & i
row("TestColumn2") = i
dt.Rows.Add(row)

' The following code trigger the error after the DataSet
' is returned to the calling Window Form application
row.SetColumnError("TestColumn1", "Error message here")
Next

Return ds
End Function

For the Windows Form application, you need to insert a datagrid control
(assumed as datagrid1). It will look something like this,

Code:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim ws As localhost.Service1
Dim ds As DataSet

Try
ws = New localhost.Service1
ds = ws.RetrieveDataSet

Me.DataGrid1.SetDataBinding(ds.Tables(0), "")
Catch ex As Exception
MsgBox(ex.Message)
Finally
If (Not (ws Is Nothing)) Then
ws.Dispose()
End If
End Try
End Sub
I really hope someone could help me out with this one.

Thanks in advance.

ps: Please, before anyone reply to state that I did not choose the
appropriate groups when making this post a crossposts post, please know that
I'm currently in blind on what is causing this error. Is it the WebService?
or is it the ADO .Net? or is it Windows Form application? or is it VB .Net?
Well, it has something to do with WebService as it only happens to the
DataSet returned by WebService. It also has something to do with ADO .Net as
I'm using DataSet. And it definitely has something to do with Windows Form
application as if I force the Windows Form application project to run on
..Net Framework 1.0, everything works fine.
Jul 19 '05 #1
8 2360
There is a known issue when using 1.1 on the server and
1.0 on the client side. It's because the dataset is
serialized differently for each version. So when the
client tries to deserialize it, it fails.

Jeff Levinson

Author of "Building Client/Server Applications with
VB.NET: An Example Driven Approach"
-----Original Message-----
Hi,

I'm working on a project which includes XML WebServices and Windows Formapplication.

The Windows Form application will call the XML WebServices to retrieve datafrom database. The data will be returned as DataSet.

Now, here's the problem. On .NET Framework 1.1, if any rows in the datasetreturned contain errors (marked by calling the SetColumnError() method orsetting the RowError property of the DataRow), I get the following errormessage in the Windows Form application,

"There is an error in XML doument (x,xxxxxxx)"

If I forced the Windows Form application to run on .NET Framework 1.0,everything works fine.

Here's the partial code for the WebService project

Code:

<WebMethod()> _
Public Function RetrieveDataSet() As DataSet
Dim ds As New DataSet
Dim dt As New DataTable
Dim row As DataRow
Dim i As Integer

dt.TableName = "TestTable"
dt.Columns.Add("TestColumn1", GetType(String))
dt.Columns.Add("TestColumn2", GetType(Integer))

ds.DataSetName = "TestDataSet"
ds.Tables.Add(dt)

For i = 0 To 10
row = dt.NewRow
row("TestColumn1") = "This is row " & i
row("TestColumn2") = i
dt.Rows.Add(row)

' The following code trigger the error after the DataSet ' is returned to the calling Window Form application row.SetColumnError("TestColumn1", "Error message here") Next

Return ds
End Function

For the Windows Form application, you need to insert a datagrid control(assumed as datagrid1). It will look something like this,

Code:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
Dim ws As localhost.Service1
Dim ds As DataSet

Try
ws = New localhost.Service1
ds = ws.RetrieveDataSet

Me.DataGrid1.SetDataBinding(ds.Tables(0), "")
Catch ex As Exception
MsgBox(ex.Message)
Finally
If (Not (ws Is Nothing)) Then
ws.Dispose()
End If
End Try
End Sub
I really hope someone could help me out with this one.

Thanks in advance.

ps: Please, before anyone reply to state that I did not choose theappropriate groups when making this post a crossposts post, please know thatI'm currently in blind on what is causing this error. Is it the WebService?or is it the ADO .Net? or is it Windows Form application? or is it VB .Net?Well, it has something to do with WebService as it only happens to theDataSet returned by WebService. It also has something to do with ADO .Net asI'm using DataSet. And it definitely has something to do with Windows Formapplication as if I force the Windows Form application project to run on..Net Framework 1.0, everything works fine.
.

Jul 19 '05 #2
You're not getting the idea here. The problem now OCCURS when the server
uses .NET Framework 1.1 and the client also uses .NET Framework 1.1.

The problem is FIXED if the client uses .NET Framework 1.0

"Jeff Levinson [mcsd]" <je***********@comcast.net> wrote in message
news:04****************************@phx.gbl...
There is a known issue when using 1.1 on the server and
1.0 on the client side. It's because the dataset is
serialized differently for each version. So when the
client tries to deserialize it, it fails.

Jeff Levinson

Author of "Building Client/Server Applications with
VB.NET: An Example Driven Approach"
-----Original Message-----
Hi,

I'm working on a project which includes XML WebServices

and Windows Form
application.

The Windows Form application will call the XML

WebServices to retrieve data
from database. The data will be returned as DataSet.

Now, here's the problem. On .NET Framework 1.1, if any

rows in the dataset
returned contain errors (marked by calling the

SetColumnError() method or
setting the RowError property of the DataRow), I get the

following error
message in the Windows Form application,

"There is an error in XML doument (x,xxxxxxx)"

If I forced the Windows Form application to run on .NET

Framework 1.0,
everything works fine.

Here's the partial code for the WebService project

Code:

<WebMethod()> _
Public Function RetrieveDataSet() As DataSet
Dim ds As New DataSet
Dim dt As New DataTable
Dim row As DataRow
Dim i As Integer

dt.TableName = "TestTable"
dt.Columns.Add("TestColumn1", GetType(String))
dt.Columns.Add("TestColumn2", GetType(Integer))

ds.DataSetName = "TestDataSet"
ds.Tables.Add(dt)

For i = 0 To 10
row = dt.NewRow
row("TestColumn1") = "This is row " & i
row("TestColumn2") = i
dt.Rows.Add(row)

' The following code trigger the error after

the DataSet
' is returned to the calling Window Form

application
row.SetColumnError("TestColumn1", "Error

message here")
Next

Return ds
End Function

For the Windows Form application, you need to insert a

datagrid control
(assumed as datagrid1). It will look something like this,

Code:

Private Sub Form1_Load(ByVal sender As

System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim ws As localhost.Service1
Dim ds As DataSet

Try
ws = New localhost.Service1
ds = ws.RetrieveDataSet

Me.DataGrid1.SetDataBinding(ds.Tables(0), "")
Catch ex As Exception
MsgBox(ex.Message)
Finally
If (Not (ws Is Nothing)) Then
ws.Dispose()
End If
End Try
End Sub
I really hope someone could help me out with this one.

Thanks in advance.

ps: Please, before anyone reply to state that I did not

choose the
appropriate groups when making this post a crossposts

post, please know that
I'm currently in blind on what is causing this error. Is

it the WebService?
or is it the ADO .Net? or is it Windows Form

application? or is it VB .Net?
Well, it has something to do with WebService as it only

happens to the
DataSet returned by WebService. It also has something to

do with ADO .Net as
I'm using DataSet. And it definitely has something to do

with Windows Form
application as if I force the Windows Form application

project to run on
..Net Framework 1.0, everything works fine.
.

Jul 19 '05 #3
I (as well as others) have posted multiple times in different groups and
have yet to recieve any response on this issue. It is extremely frustrating
because it is easy to reproduce and yet I have seen no one from MS offer to
look into it or acknowlege it. It would at least be comforting to hear them
say "yes, there is a problem and we are looking into it" but I haven't even
got that yet. Being able to set RowErrors is a powerful tool but as you see,
it will not work through web services returning a dataset as it will produce
the message you indicate below.
Roger

"Programatix" <pr*********@nospam.com> wrote in message
news:Op**************@TK2MSFTNGP12.phx.gbl...
Hi,

I'm working on a project which includes XML WebServices and Windows Form
application.

The Windows Form application will call the XML WebServices to retrieve data from database. The data will be returned as DataSet.

Now, here's the problem. On .NET Framework 1.1, if any rows in the dataset
returned contain errors (marked by calling the SetColumnError() method or
setting the RowError property of the DataRow), I get the following error
message in the Windows Form application,

"There is an error in XML doument (x,xxxxxxx)"

If I forced the Windows Form application to run on .NET Framework 1.0,
everything works fine.

Here's the partial code for the WebService project

Code:

<WebMethod()> _
Public Function RetrieveDataSet() As DataSet
Dim ds As New DataSet
Dim dt As New DataTable
Dim row As DataRow
Dim i As Integer

dt.TableName = "TestTable"
dt.Columns.Add("TestColumn1", GetType(String))
dt.Columns.Add("TestColumn2", GetType(Integer))

ds.DataSetName = "TestDataSet"
ds.Tables.Add(dt)

For i = 0 To 10
row = dt.NewRow
row("TestColumn1") = "This is row " & i
row("TestColumn2") = i
dt.Rows.Add(row)

' The following code trigger the error after the DataSet
' is returned to the calling Window Form application
row.SetColumnError("TestColumn1", "Error message here")
Next

Return ds
End Function

For the Windows Form application, you need to insert a datagrid control
(assumed as datagrid1). It will look something like this,

Code:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim ws As localhost.Service1
Dim ds As DataSet

Try
ws = New localhost.Service1
ds = ws.RetrieveDataSet

Me.DataGrid1.SetDataBinding(ds.Tables(0), "")
Catch ex As Exception
MsgBox(ex.Message)
Finally
If (Not (ws Is Nothing)) Then
ws.Dispose()
End If
End Try
End Sub
I really hope someone could help me out with this one.

Thanks in advance.

ps: Please, before anyone reply to state that I did not choose the
appropriate groups when making this post a crossposts post, please know that I'm currently in blind on what is causing this error. Is it the WebService? or is it the ADO .Net? or is it Windows Form application? or is it VB ..Net? Well, it has something to do with WebService as it only happens to the
DataSet returned by WebService. It also has something to do with ADO .Net as I'm using DataSet. And it definitely has something to do with Windows Form
application as if I force the Windows Form application project to run on
.Net Framework 1.0, everything works fine.

Jul 19 '05 #4
I guess today I searched on the right keywords - I have looked before but
did not find the following:
http://support.microsoft.com/default.aspx?scid=kb;[LN];818587

Knowledge Base Article 818587
Fix: Regression in Dataset Serialization in Visual Studio .NET 1.1 when a
datarow contains a rowError or a ColumnError Property

Roger


"Programatix" <pr*********@nospam.com> wrote in message
news:Op**************@TK2MSFTNGP12.phx.gbl...
Hi,

I'm working on a project which includes XML WebServices and Windows Form
application.

The Windows Form application will call the XML WebServices to retrieve data from database. The data will be returned as DataSet.

Now, here's the problem. On .NET Framework 1.1, if any rows in the dataset
returned contain errors (marked by calling the SetColumnError() method or
setting the RowError property of the DataRow), I get the following error
message in the Windows Form application,

"There is an error in XML doument (x,xxxxxxx)"

If I forced the Windows Form application to run on .NET Framework 1.0,
everything works fine.

Here's the partial code for the WebService project

Code:

<WebMethod()> _
Public Function RetrieveDataSet() As DataSet
Dim ds As New DataSet
Dim dt As New DataTable
Dim row As DataRow
Dim i As Integer

dt.TableName = "TestTable"
dt.Columns.Add("TestColumn1", GetType(String))
dt.Columns.Add("TestColumn2", GetType(Integer))

ds.DataSetName = "TestDataSet"
ds.Tables.Add(dt)

For i = 0 To 10
row = dt.NewRow
row("TestColumn1") = "This is row " & i
row("TestColumn2") = i
dt.Rows.Add(row)

' The following code trigger the error after the DataSet
' is returned to the calling Window Form application
row.SetColumnError("TestColumn1", "Error message here")
Next

Return ds
End Function

For the Windows Form application, you need to insert a datagrid control
(assumed as datagrid1). It will look something like this,

Code:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim ws As localhost.Service1
Dim ds As DataSet

Try
ws = New localhost.Service1
ds = ws.RetrieveDataSet

Me.DataGrid1.SetDataBinding(ds.Tables(0), "")
Catch ex As Exception
MsgBox(ex.Message)
Finally
If (Not (ws Is Nothing)) Then
ws.Dispose()
End If
End Try
End Sub
I really hope someone could help me out with this one.

Thanks in advance.

ps: Please, before anyone reply to state that I did not choose the
appropriate groups when making this post a crossposts post, please know that I'm currently in blind on what is causing this error. Is it the WebService? or is it the ADO .Net? or is it Windows Form application? or is it VB ..Net? Well, it has something to do with WebService as it only happens to the
DataSet returned by WebService. It also has something to do with ADO .Net as I'm using DataSet. And it definitely has something to do with Windows Form
application as if I force the Windows Form application project to run on
.Net Framework 1.0, everything works fine.

Jul 19 '05 #5
But... there is no way to download it. Sigh...

"RogerS" <no****@hotmail.com> wrote in message
news:uf**************@TK2MSFTNGP10.phx.gbl...
I guess today I searched on the right keywords - I have looked before but
did not find the following:
http://support.microsoft.com/default.aspx?scid=kb;[LN];818587

Knowledge Base Article 818587
Fix: Regression in Dataset Serialization in Visual Studio .NET 1.1 when a
datarow contains a rowError or a ColumnError Property

Roger


"Programatix" <pr*********@nospam.com> wrote in message
news:Op**************@TK2MSFTNGP12.phx.gbl...
Hi,

I'm working on a project which includes XML WebServices and Windows Form
application.

The Windows Form application will call the XML WebServices to retrieve data
from database. The data will be returned as DataSet.

Now, here's the problem. On .NET Framework 1.1, if any rows in the dataset returned contain errors (marked by calling the SetColumnError() method or setting the RowError property of the DataRow), I get the following error
message in the Windows Form application,

"There is an error in XML doument (x,xxxxxxx)"

If I forced the Windows Form application to run on .NET Framework 1.0,
everything works fine.

Here's the partial code for the WebService project

Code:

<WebMethod()> _
Public Function RetrieveDataSet() As DataSet
Dim ds As New DataSet
Dim dt As New DataTable
Dim row As DataRow
Dim i As Integer

dt.TableName = "TestTable"
dt.Columns.Add("TestColumn1", GetType(String))
dt.Columns.Add("TestColumn2", GetType(Integer))

ds.DataSetName = "TestDataSet"
ds.Tables.Add(dt)

For i = 0 To 10
row = dt.NewRow
row("TestColumn1") = "This is row " & i
row("TestColumn2") = i
dt.Rows.Add(row)

' The following code trigger the error after the DataSet
' is returned to the calling Window Form application
row.SetColumnError("TestColumn1", "Error message here")
Next

Return ds
End Function

For the Windows Form application, you need to insert a datagrid control
(assumed as datagrid1). It will look something like this,

Code:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim ws As localhost.Service1
Dim ds As DataSet

Try
ws = New localhost.Service1
ds = ws.RetrieveDataSet

Me.DataGrid1.SetDataBinding(ds.Tables(0), "")
Catch ex As Exception
MsgBox(ex.Message)
Finally
If (Not (ws Is Nothing)) Then
ws.Dispose()
End If
End Try
End Sub
I really hope someone could help me out with this one.

Thanks in advance.

ps: Please, before anyone reply to state that I did not choose the
appropriate groups when making this post a crossposts post, please know

that
I'm currently in blind on what is causing this error. Is it the

WebService?
or is it the ADO .Net? or is it Windows Form application? or is it VB

.Net?
Well, it has something to do with WebService as it only happens to the
DataSet returned by WebService. It also has something to do with ADO ..Net as
I'm using DataSet. And it definitely has something to do with Windows

Form application as if I force the Windows Form application project to run on
.Net Framework 1.0, everything works fine.


Jul 19 '05 #6
Does this mean I have to pay US99 to get the fix?

"Programatix" <pr*********@nospam.com> wrote in message
news:%2****************@TK2MSFTNGP11.phx.gbl...
But... there is no way to download it. Sigh...

"RogerS" <no****@hotmail.com> wrote in message
news:uf**************@TK2MSFTNGP10.phx.gbl...
I guess today I searched on the right keywords - I have looked before but
did not find the following:
http://support.microsoft.com/default.aspx?scid=kb;[LN];818587

Knowledge Base Article 818587
Fix: Regression in Dataset Serialization in Visual Studio .NET 1.1 when a datarow contains a rowError or a ColumnError Property

Roger


"Programatix" <pr*********@nospam.com> wrote in message
news:Op**************@TK2MSFTNGP12.phx.gbl...
Hi,

I'm working on a project which includes XML WebServices and Windows Form application.

The Windows Form application will call the XML WebServices to retrieve

data
from database. The data will be returned as DataSet.

Now, here's the problem. On .NET Framework 1.1, if any rows in the dataset returned contain errors (marked by calling the SetColumnError() method or setting the RowError property of the DataRow), I get the following error message in the Windows Form application,

"There is an error in XML doument (x,xxxxxxx)"

If I forced the Windows Form application to run on .NET Framework 1.0,
everything works fine.

Here's the partial code for the WebService project

Code:

<WebMethod()> _
Public Function RetrieveDataSet() As DataSet
Dim ds As New DataSet
Dim dt As New DataTable
Dim row As DataRow
Dim i As Integer

dt.TableName = "TestTable"
dt.Columns.Add("TestColumn1", GetType(String))
dt.Columns.Add("TestColumn2", GetType(Integer))

ds.DataSetName = "TestDataSet"
ds.Tables.Add(dt)

For i = 0 To 10
row = dt.NewRow
row("TestColumn1") = "This is row " & i
row("TestColumn2") = i
dt.Rows.Add(row)

' The following code trigger the error after the DataSet
' is returned to the calling Window Form application
row.SetColumnError("TestColumn1", "Error message here")
Next

Return ds
End Function

For the Windows Form application, you need to insert a datagrid control (assumed as datagrid1). It will look something like this,

Code:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim ws As localhost.Service1
Dim ds As DataSet

Try
ws = New localhost.Service1
ds = ws.RetrieveDataSet

Me.DataGrid1.SetDataBinding(ds.Tables(0), "")
Catch ex As Exception
MsgBox(ex.Message)
Finally
If (Not (ws Is Nothing)) Then
ws.Dispose()
End If
End Try
End Sub
I really hope someone could help me out with this one.

Thanks in advance.

ps: Please, before anyone reply to state that I did not choose the
appropriate groups when making this post a crossposts post, please know that
I'm currently in blind on what is causing this error. Is it the

WebService?
or is it the ADO .Net? or is it Windows Form application? or is it VB

.Net?
Well, it has something to do with WebService as it only happens to the
DataSet returned by WebService. It also has something to do with ADO .Net
as
I'm using DataSet. And it definitely has something to do with Windows

Form application as if I force the Windows Form application project to run

on .Net Framework 1.0, everything works fine.



Jul 19 '05 #7
> Does this mean I have to pay US99 to get the fix?

(sorry about that last post, I hit the wrong key)

Anyway, hopefully not. From the same page:

"NOTE: In special cases, charges that are ordinarily incurred for
support calls may be canceled if a Microsoft Support Professional
determines that a specific update will resolve your problem. The usual
support costs will apply to additional support questions and issues that
do not qualify for the specific update in question."

It remains to be seen what they consider a "special case".
Unfortunately, it sounds like they still charge you up-front, and then
maybe refund it later...

Jul 19 '05 #8
I live in Malaysia, US99 is about RM396 which is 1/3 of my monthly salary.
Anyway, why should Microsoft do that? It is a fix to their own mistakes
(bugs). Sigh...

"Joe White" <ip***@hotmail.com> wrote in message
news:3F**************@hotmail.com...
Does this mean I have to pay US99 to get the fix?


(sorry about that last post, I hit the wrong key)

Anyway, hopefully not. From the same page:

"NOTE: In special cases, charges that are ordinarily incurred for
support calls may be canceled if a Microsoft Support Professional
determines that a specific update will resolve your problem. The usual
support costs will apply to additional support questions and issues that
do not qualify for the specific update in question."

It remains to be seen what they consider a "special case".
Unfortunately, it sounds like they still charge you up-front, and then
maybe refund it later...

Jul 19 '05 #9

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

Similar topics

2
by: Programatix | last post by:
Hi, I'm working on a project which includes WebServices and Windows Form application. The Windows Form application will call the WebServices to retrieve data from database. The data will be...
1
by: Kueishiong Tu | last post by:
I have a .net window form application but I have to get data from various web sites. How do I make Http request (preferrably via post method) from a window form to get the data from those web...
6
by: Programatix | last post by:
Hi, I'm working on a project which includes XML WebServices and Windows Form application. The Windows Form application will call the XML WebServices to retrieve data from database. The data...
2
by: Kueishiong Tu | last post by:
I have a window form application. My program generates a report. I want to invoke the window notepad program to show the report. How do I do that?
2
by: MicroMoth | last post by:
Hi, Is it possible to access classes created in th app_code folder of a website, within a windows form application. The website I am trying to work with has the functionality to create a report...
1
by: yu83thang | last post by:
Hi, May I know how to declare a Class in C++ window application form? Below is my code and error as shown below as well. here is my class declaration: ref class CLoadObj { public:
1
by: bushra lokeman | last post by:
i want to display hello in textbox when i click on a button in window form application.
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
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,...
0
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...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
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...
0
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...

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.