Question

populate listview with printers

Asked by: gecko_au2003

This is in vb .net 2008 and I want to populate a listview in a list output but I cant seem to split it into an array or don't know how to

Any help please

I have been using this website

http://www.codeproject.com/KB/printing/prntjobcontrollerusingwmi.aspx

In conjunction with a conversion site which is

http://www.developerfusion.com/tools/convert/csharp-to-vb/

Thanks

Public Shared Function GetPrintersCollection() As StringCollection
        Dim printerNameCollection As New StringCollection()
        Dim searchQuery As String = "SELECT * FROM Win32_Printer"
        Dim searchPrinters As New ManagementObjectSearcher(searchQuery)
        Dim printerCollection As ManagementObjectCollection = searchPrinters.[Get]()
        For Each printer As ManagementObject In printerCollection
            printerNameCollection.Add(printer.Properties("Name").Value.ToString())
 
        Next
        Return (printerNameCollection)
    End Function

                                  
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:

Select allOpen in new window

This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2009-08-13 at 02:21:58ID24649134
Topic

Microsoft Visual Basic.Net

Participating Experts
2
Points
500
Comments
36

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. Populate a ListView
    I have populated the listview via the treeview but i am only getting the field names, i need the listview to show the actual records in the sql database as well. Any ideas?
  2. Populate Listview from SQL
    I have a listview with the following columns: ID Project DateSubmiited PersonSubmitted I am so new here. Could someone please please please show me how to populate the listview with data from SQL Server. Or show me an example of how to do so. Thanks

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: CodeCruiserPosted on 2009-08-13 at 03:33:59ID: 25086824

Change the function to use a List(of String) instead of stringcollection. Change the return type of the function as well as the type of the printerNameCollection variable.

Then in the code you can use that list of strings as follows

Dim mylist as List(of String) = GetPrintersCollection()
For Each s as string in mylist
      ListView1.Items.Add(s)
Next

 

by: DhaestPosted on 2009-08-13 at 03:35:31ID: 25086831

What error do you get ?

Another possibility (example in a combobox)

Source: http://www.vb-helper.com/howto_net_list_printers.html

Imports System.Drawing.Printing
 
Private Sub Form1_Load(ByVal sender As Object, ByVal e As _
    System.EventArgs) Handles MyBase.Load
    Dim pkInstalledPrinters As String
 
    ' Find all printers installed
    For Each pkInstalledPrinters In _
        PrinterSettings.InstalledPrinters
        cboInstalledPrinters.Items.Add(pkInstalledPrinters)
    Next pkInstalledPrinters
 
    ' Set the combo to the first printer in the list
    cboInstalledPrinters.SelectedIndex = 0
End Sub
                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:

Select allOpen in new window

 

by: gecko_au2003Posted on 2009-08-13 at 05:04:53ID: 25087221

CodeCruiser can you ellaborate ( post full code as confused what your explaining - sorry ! )

<<-- Newbie to vb 2008 so what you said here

Change the function to use a List(of String) instead of stringcollection. Change the return type of the function as well as the type of the printerNameCollection variable.

Means nothing to me

 

by: gecko_au2003Posted on 2009-08-13 at 05:07:30ID: 31615225

Thanks to both of you for your examples but I was trying to keep my code the same and in this instance wanted to know how to take what I had and add the output into the listview which codecruiser achieved

I have got it working took me a while to figure out what you explained

 

by: gecko_au2003Posted on 2009-08-13 at 05:11:50ID: 25087268

Hi CodeCruiser

Would you be willing to help me a bit more with this printer app I am doing - email address is on my profile or carry on here

That or I can ask a new question just not sure if I have enough points or not - need to check

 

by: CodeCruiserPosted on 2009-08-13 at 05:29:06ID: 25087395

Hi,
Is the problem sorted now? What else you need help with?

 

by: gecko_au2003Posted on 2009-08-13 at 05:48:12ID: 25087541

This will most likely be messy in terms of coding as am a total newbie as aformentioned but I was originally using below code to enumerate one  list view with device name and port type ie ip address, usb etc

In effect I basically want the printers listview with numerous columns ie

Device Name  |    Connection Type |    Number of Jobs |   Status  |
-------------------------------------------------------------------------------
Printer 1              IP_192.168.1.24                   0                 Online - Ready
Printer 2                      USB                              1                 Online - Printing

etc

When I click on one of the printers in the list view I want a 2nd listview where it will populate the 2nd listview with pending print jobs with relevant info mentioned below

Document Name  |   Owner    |  Submitted   |   Connection Type |    Number of Jobs |   Status     |     Size
---------------------------------------------------------------------------------------------------------
Print Job One           User 1       Date & Time    IP_192.168.1.24              0       Online - Ready            N/A
Print 2                      User 1       Date & Time           USB                          1       Online - Printing          10Mb

etc

Wanting to be able to cancel print jobs, pause and resume and cancel ALL print jobs as well and this util will have the option to connect to a print server or run locally on client machines so hence why I have the code below with the select case to either use wmi for local connection and remote connection with authentication etc

   Public Sub GetPrinters(ByVal strMachine, ByVal strUsername, ByVal strPassword)
        Dim myConnectionOptions As New System.Management.ConnectionOptions
 
        ' strMachine = "."
        Select Case strMachine
            Case "."
 
                With myConnectionOptions
                    ' myConnectionOptions.Username = "administrator"
                    ' myConnectionOptions.Password = ""
                    .Impersonation = System.Management.ImpersonationLevel.Impersonate
                    '* Use next line for XP
                    .Authentication = System.Management.AuthenticationLevel.Packet
                    '* Use next line for Win prior XP
                    '*.Authentication = System.Management.AuthenticationLevel.Connect
                End With
                'wmi connection code for localhost type machine
            Case Else
 
                With myConnectionOptions
                    myConnectionOptions.Username = "administrator"
                    myConnectionOptions.Password = ""
                    .Impersonation = System.Management.ImpersonationLevel.Impersonate
                    '* Use next line for XP
                    .Authentication = System.Management.AuthenticationLevel.Packet
                    '* Use next line for Win prior XP
                    '*.Authentication = System.Management.AuthenticationLevel.Connect
                End With
                'wmi code for connecting to a remote host
        End Select
 
        Dim myManagementScope As System.Management.ManagementScope
        '* Replace the "." with an actual servername for remote connection
        Dim myServerName As String = "."
        myManagementScope = New System.Management.ManagementScope("\\" & myServerName & "\root\cimv2", myConnectionOptions)
        '* connect to WMI namespace
        myManagementScope.Connect()
        If myManagementScope.IsConnected = False Then
            MsgBox("Could not connect to WMI namespace")
        End If
 
        Dim myObjectSearcher As System.Management.ManagementObjectSearcher
        Dim myCollection As System.Management.ManagementObjectCollection
        Dim myObject As System.Management.ManagementObject
        myObjectSearcher = New System.Management.ManagementObjectSearcher( _
          myManagementScope.Path.ToString, "Select * From Win32_Printer")
        '* execute query
        myCollection = myObjectSearcher.Get()
        '* list packages installed
        For Each myObject In myCollection
 
 
 
            Dim lSingleItem As ListViewItem    'The variable will hold the ListItem information so that you can add values to the column you want to change
 
            lSingleItem = lstPrinters.Items.Add(myObject.GetPropertyValue("Caption"))        'Create a new line, and assign the ListItem into the variable so we can add sub items
            lSingleItem.SubItems.Add(myObject.GetPropertyValue("PortName"))     'The first sub item for the first line
            ' lSingleItem.SubItems.Add("Subitem ZZY")     'The second sub item for the first line
 
            'lSingleItem = lstPrinters.Items.Add(myObject.GetPropertyValue("PortName"))       'Create another line. Same as previous new line code, but with different icon number and caption
            ' lSingleItem.SubItems.Add("Subitem CCA")     'The first sub item for the second line
            ' lSingleItem.SubItems.Add("Subitem DDA")
 
        Next
 
 
 
 
    End Sub

                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:

Select allOpen in new window

 

by: gecko_au2003Posted on 2009-08-13 at 06:25:08ID: 25087901

Forgot to mention with the method above you provided that enumerates and inserts the printers names but then cant insert the other info into the relevant columns etc so come unstuck with it

 

by: gecko_au2003Posted on 2009-08-13 at 06:53:00ID: 25088193

Also I appreicate that the above is a full program and a lot of code but just a bit stuck on how to collate the information in the querries to be able to populate the information into the listview so if we could focus on the printers one and see how thats done I could most likely transfer similiar code to the print jobs one but may still need help porting a few bits and pieces from C# to vb .net 2008 as per the link on the code project website which I linked to in the question

 

by: CodeCruiserPosted on 2009-08-13 at 07:29:16ID: 25088620

I will respond to your question later today. Please bear with me.

 

by: gecko_au2003Posted on 2009-08-13 at 07:34:24ID: 25088688

no problem and thank you very much !!!

 

by: gecko_au2003Posted on 2009-08-14 at 00:08:38ID: 25095746

Just a reminder as not heard nothing back from yourself - can appreicate you are a busy person etc

Anyway thanks again

 

by: CodeCruiserPosted on 2009-08-14 at 01:35:18ID: 25096108

Thanks for accepting the answer and sorry for not getting back (long meetings with payroll manager yesterday!). If you want to post new questions then i would be happy to answer or if you want to use this space for any more help i would still be happy to assist you.

 

by: gecko_au2003Posted on 2009-08-14 at 01:44:00ID: 25096147

If we can use this space - need to earn at least 3000 points to be able to ask a new question as out of points

 

by: CodeCruiserPosted on 2009-08-14 at 01:58:38ID: 25096188

Ok. What are you struggling with now?

 

by: gecko_au2003Posted on 2009-08-14 at 02:08:03ID: 25096223

I explained it above but basically If I enumerate the printers as per above example that you posted then I have issues with getting the other columns populated with the other info from the WMI querries ie ip address, username, size of print job etc etc as per the above post here

13/08/09 01:48 PM, ID: 25087541

 

by: gecko_au2003Posted on 2009-08-14 at 02:11:14ID: 25096235

If we can sort out the printers ListView in terms of enumerting all the correct info in a function with neat code etc then I can duplicate that across to the print job listview obviously using the different WMI Classes ie win32_PrintJob etc

 

by: gecko_au2003Posted on 2009-08-14 at 02:23:54ID: 25096286

when using the code below it only adds the printers in the first column and if i use the other wmi querries to find out job size, username, time and date submitted etc I am a bit confused on how to combine the 2 to get it to add the relevant data into the relevant columns etc

Dim mylist as List(of String) = GetPrintersCollection()
For Each s as string in mylist
      ListView1.Items.Add(s)
Next

                                              
1:
2:
3:
4:

Select allOpen in new window

 

by: CodeCruiserPosted on 2009-08-14 at 02:53:45ID: 25096421

I have tried to retrieve the list of all the properties of a printer. You can get the ConnectionType using the PortName property which returns the IP address (i could not test USB as no usb printer on my laptop). The Status property has an integer value so needs to be mapped to a string. You can use a DataTable to store all this data and keep updating it. I could not see current job count but there is a property JobsSinceLastReset. Once you have the list of printers in datatable, you can update other columns using other WMI classes.

 

by: gecko_au2003Posted on 2009-08-14 at 03:22:58ID: 25096549

thats beyond me - not done a data table before any examples ?

 

by: gecko_au2003Posted on 2009-08-14 at 03:28:41ID: 25096572

If we can get the data table setup and going and show me how to add data to the 2nd column - adding data to the other columns I can do.

 

by: CodeCruiserPosted on 2009-08-14 at 03:33:36ID: 25096598

Here is an example


        Dim dTable As New DataTable
        dTable.Columns.Add("PrinterID", GetType(Integer))
        dTable.Columns.Add("PrinterName", GetType(String))
        dTable.Columns.Add("PrinterPort", GetType(String))
        dTable.Columns.Add("Queued Jobs", GetType(Integer))
        Dim searchQuery As String = "SELECT * FROM Win32_Printer"
        Dim searchPrinters As New ManagementObjectSearcher(searchQuery)
        Dim printerCollection As ManagementObjectCollection = searchPrinters.[Get]()
        For Each printer As ManagementObject In printerCollection
            Dim drow As DataRow = dTable.NewRow
            drow(0) = dTable.Rows.Count + 1
            drow(1) = printer.Properties("Name").Value.ToString
            drow(2) = printer.Properties("PortName").Value.ToString
            dTable.Rows.Add(drow)
        Next
 
Then later
for i as integer = 0 to dtable.rows.count - 1
    dtable.rows(i).items("Queued Jobs") = queuedjobs
next

                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:

Select allOpen in new window

 

by: gecko_au2003Posted on 2009-08-14 at 03:46:23ID: 25096652

The function you posted above how does that tie in with this code

    Public Shared Function GetPrintersCollection() As List(Of String)
        Dim printerNameCollection As New List(Of String)
        Dim searchQuery As String = "SELECT * FROM Win32_Printer"
        Dim searchPrinters As New ManagementObjectSearcher(searchQuery)
        Dim printerCollection As ManagementObjectCollection = searchPrinters.[Get]()
        For Each printer As ManagementObject In printerCollection
            printerNameCollection.Add(printer.Properties("Name").Value.ToString())
 
        Next
        Return (printerNameCollection)
    End Function

                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:

Select allOpen in new window

 

by: gecko_au2003Posted on 2009-08-14 at 03:46:45ID: 25096655

With regards to the Return (printerNameCollection)

 

by: gecko_au2003Posted on 2009-08-14 at 03:56:58ID: 25096698

Getting 2 error messages

Error      1      'items' is not a member of 'System.Data.DataRow'.      C:\vb 2008 current\Printer_Management\Printer_Management\Form1.vb      147      13      Printer_Management


Error      2      Name 'queuedjobs' is not declared.      C:\vb 2008 current\Printer_Management\Printer_Management\Form1.vb      147      51      Printer_Management


I have also imports System.Data.DataRow

 

by: gecko_au2003Posted on 2009-08-14 at 03:59:21ID: 25096710

Fixed error 1 ( was Item not Items ) but still stuck on error 2

 

by: CodeCruiserPosted on 2009-08-14 at 04:10:03ID: 25096772

You can replace the code in the original function so that it returns a datatable instead of stringcollection. The queuedjobs is a TEST/DEMO name i included. This would be the value you would retrieve using other WMI code.

 

by: gecko_au2003Posted on 2009-08-14 at 04:24:22ID: 25096851

Thats where I am getting stuck because I don't know how to intergrate more then one WMI querry into this data table because the queued job names you get from the win32_PrintJob class where as win32_Printer is a totally different wmi class and I don't get how to combine the two together so that I can do the following

where queuedjobs is the result(s) from the win32_PrintJob class with respect to the actual queued Jobs in the selected printers print queue

        For i As Integer = 0 To dTable.Rows.Count - 1
            dTable.Rows(i).Item("Queued Jobs") = queuedjobs
        Next

                                              
1:
2:
3:

Select allOpen in new window

 

by: CodeCruiserPosted on 2009-08-14 at 05:32:21ID: 25097271

You can retrieve the queued jobs using another WMI query and then update the datatable. For example (again this is just demo code and you may need to tweak it especially the query for retrieving jobs of a specific printer)


        Dim dTable As New DataTable
        dTable.Columns.Add("PrinterID", GetType(Integer))
        dTable.Columns.Add("PrinterName", GetType(String))
        dTable.Columns.Add("PrinterPort", GetType(String))
        dTable.Columns.Add("Queued Jobs", GetType(Integer))
        Dim searchQuery As String = "SELECT * FROM Win32_Printer"
        Dim searchPrinters As New ManagementObjectSearcher(searchQuery)
        Dim printerCollection As ManagementObjectCollection = searchPrinters.[Get]()
        For Each printer As ManagementObject In printerCollection
            Dim drow As DataRow = dTable.NewRow
            drow(0) = dTable.Rows.Count + 1
            drow(1) = printer.Properties("Name").Value.ToString
            drow(2) = printer.Properties("PortName").Value.ToString
            dTable.Rows.Add(drow)
        Next
 
        For i As Integer = 0 To dTable.Rows.Count - 1
            searchQuery = "Select * From Win32_PrintJobs where printername(this could be anything) = '" & dTable.Rows.Item(i).Item("PrinterName") & "'"
            searchPrinters = New ManagementObjectSearcher(searchQuery)
            Dim JobsCollection As ManagementObjectCollection = searchPrinters.[Get]()
            dTable.Rows(i).Item("QueuedJobs") = JobsCollection.count
        Next
                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:

Select allOpen in new window

 

by: gecko_au2003Posted on 2009-08-14 at 05:55:05ID: 25097431

Put that in a function and it just errored out stating its an invalid querry

Is this meant to be in a function or sub or what exactly ?

Now thats done how do I return the info to the listview ?

dTable.Rows(i).Item("QueuedJobs") = JobsCollection.count

                                              
1:

Select allOpen in new window

 

by: CodeCruiserPosted on 2009-08-14 at 06:12:45ID: 25097569

I told you you may need to tweak the query. This code can be put in a function and the end statement could be "Return dTable" then you can use that datatable as a datasource to a gridview.

 

by: gecko_au2003Posted on 2009-08-14 at 06:19:46ID: 25097639

Does not work due to code below and how would I add the results to a data grid ( same way as above where you loop through it using a mylist ( string ) etc

dTable.Rows(i).Item("QueuedJobs") = JobsCollection.count

                                              
1:

Select allOpen in new window

 

by: CodeCruiserPosted on 2009-08-14 at 07:37:32ID: 25098504

Post complete code. To show in a datagridview, drag and drop a datagridview on form and in code, set its datasource = dTable.

 

by: gecko_au2003Posted on 2009-08-16 at 03:40:15ID: 25108475

I am getting confused with the code you are posting and am not sure how to use this - do I insert the code into a timer and set the timer to 500 or what exactly

 

by: CodeCruiserPosted on 2009-08-16 at 06:14:47ID: 25108883

The code fills a datatable with the list of printers. Now its upto you to decide how to use this code. I do not know the architecture of your application so i can not say whether to put this code in a timer or in the button click event.

 

by: gecko_au2003Posted on 2009-08-27 at 05:48:03ID: 25197358

Just as a heads up have re asked the question as stuck with this data table issue

http://www.experts-exchange.com/Programming/Languages/.NET/Visual_Basic.NET/Q_24685625.html

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...