473,836 Members | 1,546 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

.exe throws exception from local, but not network drive

Used VB.NET (on my client PC) to convert VB6 executable
to .NET executable. Placed the .exe file on a network drive
on my server. From client, ran .NET Wizards "Trust an
Assembly" to make the .exe (on the network drive, on the
server) "Full Trust." From the client, double-click on the
..exe (on the network drive, on the server) and it runs fine.

So far, so good, but...

On the server, where I've installed not VB.NET but .NET
Framework 1.1, ran Microsoft .NET Framework 1.1 Wizards
"Trust an Assembly" to make the .exe (on the local hard
drive of the server, not a network drive) "Full Trust," which
sticks, but when I double-click on the .exe (on the server,
on the local hard drive) CLR Debugging Services gives
"Applicatio n has generated an exception that could not
be handled." Any advice on how to debug this, from the
server, where VB.NET is not installed, would be appreciated.

I suspect the exception is System.Security .SecurityExcept ion
but don't know where to put Try/Catch/End code, as the
exception is thrown before the form loads, and don't know
how to invoke the JIT debugger on the server.

BTW Server is Win2K Pro; client is XP Home.
Any suggestions? I'm new to .NET and haven't got .NET
security figured out (as if you couldn't tell.) The VB6 version
of the .exe ran fine, wherever I put it, local hard drive or network
drive. The application uses File System Object, if that's a clue.

-- frosty
Nov 20 '05 #1
14 2328
Have enough rights on that server? Try with an admin account to run the .exe

--
Ceers,
Crirus

------------------------------
If work were a good thing, the boss would take it all from you

------------------------------

"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
Used VB.NET (on my client PC) to convert VB6 executable
to .NET executable. Placed the .exe file on a network drive
on my server. From client, ran .NET Wizards "Trust an
Assembly" to make the .exe (on the network drive, on the
server) "Full Trust." From the client, double-click on the
.exe (on the network drive, on the server) and it runs fine.

So far, so good, but...

On the server, where I've installed not VB.NET but .NET
Framework 1.1, ran Microsoft .NET Framework 1.1 Wizards
"Trust an Assembly" to make the .exe (on the local hard
drive of the server, not a network drive) "Full Trust," which
sticks, but when I double-click on the .exe (on the server,
on the local hard drive) CLR Debugging Services gives
"Applicatio n has generated an exception that could not
be handled." Any advice on how to debug this, from the
server, where VB.NET is not installed, would be appreciated.

I suspect the exception is System.Security .SecurityExcept ion
but don't know where to put Try/Catch/End code, as the
exception is thrown before the form loads, and don't know
how to invoke the JIT debugger on the server.

BTW Server is Win2K Pro; client is XP Home.
Any suggestions? I'm new to .NET and haven't got .NET
security figured out (as if you couldn't tell.) The VB6 version
of the .exe ran fine, wherever I put it, local hard drive or network
drive. The application uses File System Object, if that's a clue.

-- frosty

Nov 20 '05 #2
> "frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
Used VB.NET (on my client PC) to convert VB6 executable
to .NET executable. Placed the .exe file on a network drive
on my server. From client, ran .NET Wizards "Trust an
Assembly" to make the .exe (on the network drive, on the
server) "Full Trust." From the client, double-click on the
.exe (on the network drive, on the server) and it runs fine.

So far, so good, but...

On the server, where I've installed not VB.NET but .NET
Framework 1.1, ran Microsoft .NET Framework 1.1 Wizards
"Trust an Assembly" to make the .exe (on the local hard
drive of the server, not a network drive) "Full Trust," which
sticks, but when I double-click on the .exe (on the server,
on the local hard drive) CLR Debugging Services gives
"Applicatio n has generated an exception that could not
be handled." Any advice on how to debug this, from the
server, where VB.NET is not installed, would be appreciated.

I suspect the exception is System.Security .SecurityExcept ion
but don't know where to put Try/Catch/End code, as the
exception is thrown before the form loads, and don't know
how to invoke the JIT debugger on the server.

BTW Server is Win2K Pro; client is XP Home.
Any suggestions? I'm new to .NET and haven't got .NET
security figured out (as if you couldn't tell.) The VB6 version
of the .exe ran fine, wherever I put it, local hard drive or network
drive. The application uses File System Object, if that's a clue.

-- frosty

Crirus wrote: Have enough rights on that server? Try with an admin account to run
the .exe

------------------------------
If work were a good thing, the boss would take it all from you

------------------------------


Thanks, but that was not the problem. Turns out the exception had
nothing to do with System.Security .SecurityExcept ion. By copying
DLL's from the client to the server, was able to get enough of the
debugger info, in a command prompt box, to determine it was another
missing DLL, namely Microsoft.Visua lBasic.Compatib ility.dll and when
I copied that DLL to the server, my app started to work.

I'm sure there's a better way to assure the dll in question gets distributed
with the .exe that is my app. Anybody know how this is supposed to
be done? Can it be done in VB.NET or do I need VS.NET?

-- frosty
Nov 20 '05 #3
frostalicious,
I'm sure there's a better way to assure the dll in question gets distributed with the .exe that is my app. Anybody know how this is supposed to
be done? Can it be done in VB.NET or do I need VS.NET?
The Microsoft.Visua lBasic.Compatib ility.dll is not included with the
framework, you need to install it yourself.

My first advice is to avoid the Compatibility DLL if at all possible. If
that is not an option, then you may want to consider a Setup project to
ensure that all the components get installed, in the correct location.

Hope this helps
Jay
"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
Used VB.NET (on my client PC) to convert VB6 executable
to .NET executable. Placed the .exe file on a network drive
on my server. From client, ran .NET Wizards "Trust an
Assembly" to make the .exe (on the network drive, on the
server) "Full Trust." From the client, double-click on the
.exe (on the network drive, on the server) and it runs fine.

So far, so good, but...

On the server, where I've installed not VB.NET but .NET
Framework 1.1, ran Microsoft .NET Framework 1.1 Wizards
"Trust an Assembly" to make the .exe (on the local hard
drive of the server, not a network drive) "Full Trust," which
sticks, but when I double-click on the .exe (on the server,
on the local hard drive) CLR Debugging Services gives
"Applicatio n has generated an exception that could not
be handled." Any advice on how to debug this, from the
server, where VB.NET is not installed, would be appreciated.

I suspect the exception is System.Security .SecurityExcept ion
but don't know where to put Try/Catch/End code, as the
exception is thrown before the form loads, and don't know
how to invoke the JIT debugger on the server.

BTW Server is Win2K Pro; client is XP Home.
Any suggestions? I'm new to .NET and haven't got .NET
security figured out (as if you couldn't tell.) The VB6 version
of the .exe ran fine, wherever I put it, local hard drive or network
drive. The application uses File System Object, if that's a clue.

-- frosty


Crirus wrote:
Have enough rights on that server? Try with an admin account to run
the .exe

------------------------------
If work were a good thing, the boss would take it all from you

------------------------------


Thanks, but that was not the problem. Turns out the exception had
nothing to do with System.Security .SecurityExcept ion. By copying
DLL's from the client to the server, was able to get enough of the
debugger info, in a command prompt box, to determine it was another
missing DLL, namely Microsoft.Visua lBasic.Compatib ility.dll and when
I copied that DLL to the server, my app started to work.

I'm sure there's a better way to assure the dll in question gets

distributed with the .exe that is my app. Anybody know how this is supposed to
be done? Can it be done in VB.NET or do I need VS.NET?

-- frosty

Nov 20 '05 #4
I would like to insure that all the components get installed, in the
correct location, yes. Could you elaborate on "consider a Setup
project" for me? I would also like to run the .exe on any system
with .net framework 1.1 installed, so if the compatibility dll is not
part of that setup (and it's not) then running the .exe without the
need for the compatibility dll would be preferred. Another thing
I don't know how to do. We are very much on the same page,
as far as strategy (which is encouraging to me!) but I need help
with tactics. I could live with sending each user a .exe and the
..dll file, but it's just so... tacky. And, presumably, unnecessary.

-- frosty

Jay B. Harlow [MVP - Outlook] wrote:
frostalicious,
I'm sure there's a better way to assure the dll in question gets
distributed with the .exe that is my app. Anybody know how this is
supposed to be done? Can it be done in VB.NET or do I need VS.NET?


The Microsoft.Visua lBasic.Compatib ility.dll is not included with the
framework, you need to install it yourself.

My first advice is to avoid the Compatibility DLL if at all possible.
If that is not an option, then you may want to consider a Setup
project to ensure that all the components get installed, in the
correct location.

Hope this helps
Jay
"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
Used VB.NET (on my client PC) to convert VB6 executable
to .NET executable. Placed the .exe file on a network drive
on my server. From client, ran .NET Wizards "Trust an
Assembly" to make the .exe (on the network drive, on the
server) "Full Trust." From the client, double-click on the
.exe (on the network drive, on the server) and it runs fine.

So far, so good, but...

On the server, where I've installed not VB.NET but .NET
Framework 1.1, ran Microsoft .NET Framework 1.1 Wizards
"Trust an Assembly" to make the .exe (on the local hard
drive of the server, not a network drive) "Full Trust," which
sticks, but when I double-click on the .exe (on the server,
on the local hard drive) CLR Debugging Services gives
"Applicatio n has generated an exception that could not
be handled." Any advice on how to debug this, from the
server, where VB.NET is not installed, would be appreciated.

I suspect the exception is System.Security .SecurityExcept ion
but don't know where to put Try/Catch/End code, as the
exception is thrown before the form loads, and don't know
how to invoke the JIT debugger on the server.

BTW Server is Win2K Pro; client is XP Home.
Any suggestions? I'm new to .NET and haven't got .NET
security figured out (as if you couldn't tell.) The VB6 version
of the .exe ran fine, wherever I put it, local hard drive or
network drive. The application uses File System Object, if that's
a clue.

-- frosty


Crirus wrote:
Have enough rights on that server? Try with an admin account to run
the .exe

------------------------------
If work were a good thing, the boss would take it all from you

------------------------------


Thanks, but that was not the problem. Turns out the exception had
nothing to do with System.Security .SecurityExcept ion. By copying
DLL's from the client to the server, was able to get enough of the
debugger info, in a command prompt box, to determine it was another
missing DLL, namely Microsoft.Visua lBasic.Compatib ility.dll and when
I copied that DLL to the server, my app started to work.

I'm sure there's a better way to assure the dll in question gets
distributed with the .exe that is my app. Anybody know how this is
supposed to be done? Can it be done in VB.NET or do I need VS.NET?

-- frosty

Nov 20 '05 #5
The documentation says about that DLL, article 318833.
"Note: These files are included with Microsoft Visual Basic .NET to assist with
the upgrade process. They are not intended for use in new project development. "

You should post what functionality is in there that you're using and see if you
can use something else instead. I've seen people using it because it has a
folder browser, but there is one of these in the 1.1 framework (there wasn't in
1.0).
--
Phil Wilson [MVP Windows Installer]
----
"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
I would like to insure that all the components get installed, in the
correct location, yes. Could you elaborate on "consider a Setup
project" for me? I would also like to run the .exe on any system
with .net framework 1.1 installed, so if the compatibility dll is not
part of that setup (and it's not) then running the .exe without the
need for the compatibility dll would be preferred. Another thing
I don't know how to do. We are very much on the same page,
as far as strategy (which is encouraging to me!) but I need help
with tactics. I could live with sending each user a .exe and the
.dll file, but it's just so... tacky. And, presumably, unnecessary.

-- frosty

Jay B. Harlow [MVP - Outlook] wrote:
frostalicious,
I'm sure there's a better way to assure the dll in question gets
distributed with the .exe that is my app. Anybody know how this is
supposed to be done? Can it be done in VB.NET or do I need VS.NET?


The Microsoft.Visua lBasic.Compatib ility.dll is not included with the
framework, you need to install it yourself.

My first advice is to avoid the Compatibility DLL if at all possible.
If that is not an option, then you may want to consider a Setup
project to ensure that all the components get installed, in the
correct location.

Hope this helps
Jay
"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
> Used VB.NET (on my client PC) to convert VB6 executable
> to .NET executable. Placed the .exe file on a network drive
> on my server. From client, ran .NET Wizards "Trust an
> Assembly" to make the .exe (on the network drive, on the
> server) "Full Trust." From the client, double-click on the
> .exe (on the network drive, on the server) and it runs fine.
>
> So far, so good, but...
>
> On the server, where I've installed not VB.NET but .NET
> Framework 1.1, ran Microsoft .NET Framework 1.1 Wizards
> "Trust an Assembly" to make the .exe (on the local hard
> drive of the server, not a network drive) "Full Trust," which
> sticks, but when I double-click on the .exe (on the server,
> on the local hard drive) CLR Debugging Services gives
> "Applicatio n has generated an exception that could not
> be handled." Any advice on how to debug this, from the
> server, where VB.NET is not installed, would be appreciated.
>
> I suspect the exception is System.Security .SecurityExcept ion
> but don't know where to put Try/Catch/End code, as the
> exception is thrown before the form loads, and don't know
> how to invoke the JIT debugger on the server.
>
> BTW Server is Win2K Pro; client is XP Home.
> Any suggestions? I'm new to .NET and haven't got .NET
> security figured out (as if you couldn't tell.) The VB6 version
> of the .exe ran fine, wherever I put it, local hard drive or
> network drive. The application uses File System Object, if that's
> a clue.
>
> -- frosty

Crirus wrote:
Have enough rights on that server? Try with an admin account to run
the .exe

------------------------------
If work were a good thing, the boss would take it all from you

------------------------------

Thanks, but that was not the problem. Turns out the exception had
nothing to do with System.Security .SecurityExcept ion. By copying
DLL's from the client to the server, was able to get enough of the
debugger info, in a command prompt box, to determine it was another
missing DLL, namely Microsoft.Visua lBasic.Compatib ility.dll and when
I copied that DLL to the server, my app started to work.

I'm sure there's a better way to assure the dll in question gets
distributed with the .exe that is my app. Anybody know how this is
supposed to be done? Can it be done in VB.NET or do I need VS.NET?

-- frosty


Nov 20 '05 #6
I'm using SendKeys:

Assembly Microsoft.Visua lBasic.Compatib ility
C:\WINDOWS\Micr osoft.NET\Frame work\v1.1.4322\ Microsoft.Visua lBasic.Compatib i
lity.dll
Namespace Microsoft.Visua lBasic.Compatib ility.VB6
Member of: Microsoft.Visua lBasic.Compatib ility
Public Module Support
Member of: Microsoft.Visua lBasic.Compatib ility.VB6
Public Sub SendKeys(ByVal Keys As String, Optional ByVal Wait As
Boolean = False)
Member of: Microsoft.Visua lBasic.Compatib ility.VB6.Suppo rt

-- frosty

Phil Wilson wrote:
The documentation says about that DLL, article 318833.
"Note: These files are included with Microsoft Visual Basic .NET to
assist with the upgrade process. They are not intended for use in new
project development. "

You should post what functionality is in there that you're using and
see if you can use something else instead. I've seen people using it
because it has a folder browser, but there is one of these in the 1.1
framework (there wasn't in 1.0).

I would like to insure that all the components get installed, in the
correct location, yes. Could you elaborate on "consider a Setup
project" for me? I would also like to run the .exe on any system
with .net framework 1.1 installed, so if the compatibility dll is not
part of that setup (and it's not) then running the .exe without the
need for the compatibility dll would be preferred. Another thing
I don't know how to do. We are very much on the same page,
as far as strategy (which is encouraging to me!) but I need help
with tactics. I could live with sending each user a .exe and the
.dll file, but it's just so... tacky. And, presumably, unnecessary.

-- frosty

Jay B. Harlow [MVP - Outlook] wrote:
frostalicious,
I'm sure there's a better way to assure the dll in question gets
distributed with the .exe that is my app. Anybody know how this is
supposed to be done? Can it be done in VB.NET or do I need VS.NET?

The Microsoft.Visua lBasic.Compatib ility.dll is not included with the
framework, you need to install it yourself.

My first advice is to avoid the Compatibility DLL if at all
possible. If that is not an option, then you may want to consider a
Setup project to ensure that all the components get installed, in
the correct location.

Hope this helps
Jay
[snip] [It] was another
missing DLL, namely Microsoft.Visua lBasic.Compatib ility.dll and
when I copied that DLL to the server, my app started to work.

Nov 20 '05 #7
> I'm using SendKeys:

There is a System.Windows. Forms.SendKeys class.

HTH;
Eric Cadwell
http://www.origincontrols.com
Nov 20 '05 #8
>> I'm using SendKeys:

Eric Cadwell wrote:

There is a System.Windows. Forms.SendKeys class.

HTH;
Eric Cadwell
http://www.origincontrols.com


Turns out that's the only SendKeys I'm using.

How do I find what piece(s) of the VB compatibility
DLL is (are) really being used, then?

-- frosty
Nov 20 '05 #9
frostalicious,
I normally remove the imports looking for errors, then I remove the
reference looking for errors.

As I remove one of the above if there are a handful of errors I take care of
them as I go, if there a numerous errors I leave them and put the item back.

Hope this helps
Jay

"frostalici ous" <fr*****@nospam .com> wrote in message
news:vr******** ****@corp.super news.com...
I'm using SendKeys:


Eric Cadwell wrote:

There is a System.Windows. Forms.SendKeys class.

HTH;
Eric Cadwell
http://www.origincontrols.com


Turns out that's the only SendKeys I'm using.

How do I find what piece(s) of the VB compatibility
DLL is (are) really being used, then?

-- frosty

Nov 20 '05 #10

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

Similar topics

1
297
by: ae | last post by:
I keep getting this error whenever I try loggin on my new apps. In this instance all I am accessing is the c drive and notepad or whatever. Has anybody seen it before? Also, I do get an "untrusted" notification whenever I first login in to my VS.NET. Could that be the cause 'System.Security.SecurityException Additional information: Requst faile Thanks for any leads you can provide me !
0
1549
by: Oliver | last post by:
Hello, I may have posted in the wrong place, if so, feel free to move my post (just notify me where you put it via email or something) I’m having a problem with my program that I cant readily explain. The program connects to, then reads and creates a new flat old Dbase files (.DBF) stored on a network drive. The program itself is run from the very same network drive/folder.
2
2955
by: Daniel | last post by:
if System.IO.StreamWriter write throws an exception, is there anyway to close the System.IO.StreamWriter object? it seems to stay open when this happens then future attempts to write to that same path fail because it says its in use by another process.
0
1276
by: MikeL | last post by:
I am using Access 2K and have created a simple data access page which only works properly when it is run from the local C drive. The data file that is being accessed is held on a shared network drive, and the data access page works for anyone on our domain, but only if the htm file is run from the local c drive. If I attempt to run it from either a network shared drive or from our intranet server, the page loads and displays static data...
2
5217
by: Piotr Bieniek | last post by:
Hello, I have a problem with UDP sockets. It concerns UdpClient class as well. It throws strange exceptions on subsequent Send calls. Exception is SocketException with native error code 10049. I noticed that it happens when I call Send for the second time in my program. It seemed strange, so I compiled and run Chat sample program from MSDN. To my surprise, it worked. But then I modified it. The only change was that I duplicated sending...
4
1949
by: Boris | last post by:
I observe the following strange behavior of my application. Let say we have managed application MyApp.exe which depend on a few assemblies MyAssembly1.dll, MyAssembly2.dll and MyAssembly3.dll. The assemblies I mentione have strong names. I build the exe and all assemblies on my computer and install assemblies to GAC. I run MyApp.exe, test it and everything is OK. Then I copy all executable files (exe and dll) to our network server.
2
2678
by: .Net Believer | last post by:
I using the routine below to copy file to a network drive for a regular backup process. Before calling this routine I using another function to check the presence of the LAN connection and the server where the network drive exists. Although of this check I am sometimes getting an exception (in 5% of times)saying "Could not find the U:\...\File.ext" or part of its path" Although the network dirve is available and accessible by windows...
3
5456
by: RLN | last post by:
(New to SQL Server Installs) I installed SQL Server 2005 Developer Edition on a WinXP-SP2 workstation and can see some enterprise databases on the network just fine. My problem is I cannot register a local database on the local drive for testing/education purposes. (I accepted all of the defaults on the install and thought all was well.)
8
7711
by: jporter188 | last post by:
Hello, I am working on a project to manipulate XML files. All of the files, the code, and the output are on network drives. When I run my program I get an exception (see below). I tried giving the LocalIntranet_Zone full permissions in the .NET Framework 2.0 Configuration msc. This had no effect whatsoever. What do I need to do to fix this? Thanks,
0
9825
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
10852
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, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10553
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
10596
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
10255
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...
1
7793
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5651
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...
0
5829
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
3
3116
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.