wecam

How to Choose the Right Webcam Surveillance Software?Many people want to have some kind of spy equipment for better home security. However, besides wireless spy cameras, VCR or DVR systems, there is also special software used to control those surveillance gadgets.

Large companies use professional security systems along with already built in (embedded digital video recorder or PC based DVR soft) spy camera control software. But what about smaller guys? Do you also have to spend thousands of dollars for professional spy security system and software to feel safe and secure in your house? And the answer is not necessarily.

Webcam for Spying Purposes

You have the ability to use your webcam (connected to your PC) as a surveillance tool. And to control it, all you need is inexpensive webcam surveillance software. As a matter of fact, such software allows you to connect more than one camera. It can display as much as 16 webcam views on your computer screen.

Moreover, webcam surveillance software even allows you to detect motion and start capturing an event within milliseconds. This means that you don't have to keep your webcam surveillance software turned on all the time in order to secure the area. By using motion detection webcams, you can also save your computer's HDD (hard drive) space.

You know, video takes a lot of hard drive space. Non stop recording for 24 hours can cost you 1GB of HDD space a day. Well, it depends on the chosen image quality. Lower quality images will require less bandwidth. Also, if you set lower FPS (frames per second), then you'll save even more HDD space.

But if you have a large HDD (like 160GB or more), then there's nothing to worry about.

What to Look for in Webcam Surveillance Software?

Before you decide to order webcam surveillance software, there are a couple of things to consider. Let's take a look at some of the features of webcam software that you should seriously consider, ok.

*

Audio Capturing - Does your webcam surveillance software have audio capturing option? If not, then you should consider that carefully. If you want to record a conversation, it's crucial.
*

Compressed Files - Does your webcam software compress video files? If not, then the space of your HDD might fill up quickly. Try to search for software that compresses the video without losing its quality.
*

Remote Access - This is very important. If you leave your webcam to record the area, you should have the ability to access your webcam's view via internet connection. This is very neat function that is absolutely must in webcam software.
*

Motion Detection - We've already mentioned that. Motion detection is also extremely important. You don't want to record the area when nothing's going on, right. So make sure that motion sensing is enabled in your software.
*

Alert Options - Does the webcam surveillance software have an alert option? Some webcam software alert when they detect something. They can alert via email or even dial a phone number. You should seek for this feature, because it's very neat.
*

Multiple Webcams - Can your surveillance software record a live view from multiple web cameras? 2, 4 or 16? If you want to connect more than one camera to your PC, then multiple webcam support is absolutely must in the software you choose.
* Stealth Mode - Does the webcam software run in stealth mode? Stealth mode means that nobody can see if the software is running or not. Not even if they Press "Ctr+Alt+Del" and look at Windows Task Manager!



Look for webcam surveillance software that allows you to do all or at least most of the functions mentioned above. If your software isn't capable of detecting motion, doesn't have alert option, doesn't have audio recording options, then search for a better solution.

In Conclusion

Webcam software (for spying or home protection purposes) combined with a few inexpensive webcams, can definitely serve as a basic home security system. You can put your webcams in the most important places and have your PC to record each camera's view. And if motion sensors detect something unusual, they can alert you via email or phone.

However, if you're really looking for quality and all-in-one solution for professional home protection, then a more powerful DVR security system with multiple spy cameras could be your best shot. Such systems cost over thousand dollars, but they're ideal for quality home or office protection.

Author Bio

Dan Crane offer free tips and article about spy cameras, bug detectors, security systems or body worn cams. If you'd like to find out more information about webcam surveillance software used to control nanny cams, then check out Vedosoft website.

Simple DataReader in C#

Simple DataReader in C#
By: cbmeeks

Hello.

Today, I want to tell the absolute beginner how to read a value from a SQLDataReader in C#.

If you are an experienced ADO.NET developer then this article will be a complete bore for you. But, believe it or not, there are people who are trying to learn how to work with databases in C#. So maybe I can help out at least one person!

What is an SQL DataReader? DataReaders are a fast way to pull records from a database when all you want to do is simply READ. You may have heard the term "Firehose Cursor" used to describe a DataReader. A firehose is a good comparison because the water (data) only flows one way and it flows fast. DataReaders can not be used to update data, delete data, or anything else other than reading. A good example of when to use a DataReader would be cities in a state. You may want to read out all cities in New York and since they aren't exactly changing every day, you would want to pull them down as fast as possible.

Ok, I promised fast and easy so here goes.

First, you must instantiate (create) a new database connection. Now, I am only working with Microsoft's SQL server today. If you need help converting this article to other database platforms like Oracle or MySQL then please let me know.

Make sure you are also using the needed namespaces before you begin.

using System.Data;
using System.Data.SqlClient;

SqlConnection adoConn = new SqlConnection("Data Source=server;Initial Catalog=database;Persist Security Info=True;User ID=username;Password=password");
adoConn.Open();

Database is now created and opened. The string that we passed is called the "Connection String". All it does is tell the database how and where to open the connection. Substitute "server", "Initial Catalog", and "User ID/Password" with your database information. Remember, this is ONLY an open connection. The database is sitting there waiting on a command. And that is exactly what we setup next. A command. Think of a command as a direct order you give the server (even though it may or may not listen!).

// new command
string sql = "SELECT CustomerName FROM MyTable";
SqlCommand adoCmd = new SqlCommand(sql, adoConn);

The sql string is simply a SQL command we are passing. The adoConn is telling the command which connection to use. Simple, huh?

Ok, now we have an open connection and a command (using the sql string). Our next move is to create the DataReader and display some data.

SqlDataReader adoDR = adoCmd.ExecuteReader();

if (adoDR.HasRows)
{
while (adoDR.Read())
{
Response.Write(adoDR["CustomerName"].ToString());
}
}

The ExecuteReader() method sends the SQL data from the command (our SELECT statement) and if there are records, brings them one at a time down to the DataReader (adoDR).

You'll notice that we first called the .HasRows condition. It's always good to first make sure there is data returned before you do anything with it. The next statement might look a little confusing. This while loop brings each record down one at a time. See, when you call the ExecuteReader and assuming there are rows, you actually start at position "-1". Strange, huh? For example, let's say that SELECT statement returned 50 rows of data. The first record number would be 0, the next would be 1, then so on until record 49. 0-49 records. Everytime you call the .Read() on the DataReader, you advance a record. So, if you started at -1 and advanced a record you would be at the beginning. Record 0. Calling .Read() will continue to return TRUE until you reach the last record. So as you can see, this makes it convenient to cycle through all records. Also I should mention you HAVE to call it at least once to advance to the first record.

The Response.Write command simply sends the data to the web page. This could have been Console.WriteLine, etc. Notice how the "CustomerName" was used. Be careful here because you want to make sure you don't try to call a field in a table that you didn't SELECT.

Ok, the last thing to do is close connections and dispose so that we don't create memory leaks on the server.


adoDR.Close();
adoDR.Dispose();
adoCmd.Dispose();
adoConn.Close();
adoConn.Dispose();

Noticed I reversed the order that I used when creating the objects. DataReaders are opened when you call the ExecuteReader() and when you open something, you should close it. Calling .Dispose() on these objects would also close them but closing them myself has always been a habbit of mine. Command objects aren't opened or closed so no Close() is needed. And finally we close/dispose of the database connection.

There. Was that so hard? We created a database connection, opened it, created a command (using a custom SQL query) and executed the DataReader. Then, we looped through the records. Finally, we closed and disposed of all the objects.

There you have it. Simple. ADO.NET has made it really easy to display data. This is just a tiny scratch on the Titanic. ADO.NET could fill 50,000 pages!

I hope you enjoyed this article. I have to admit, I'm not much of a writer but I remember the first time I pulled data from a database and I wished I had someone telling me in plain English how to get right to the point.

Obviously, we didn't cover other topics like error trapping, DataGrids, DataSets, etc. Those will come in time!

Author Bio