Language - Visual Basic: Difference between revisions
From Phidgets Support
No edit summary |
|||
| (85 intermediate revisions by 9 users not shown) | |||
| Line 1: | Line 1: | ||
{{#seo:|description=Learn how to use Phidget USB devices with Visual Basic.}} | |||
[[Category:Language]] | [[Category:Language]] | ||
==Get Started== | |||
With the Phidget22.NET library, it's easy to create VB applications that work with Phidget devices. | |||
== | ==VB Libraries== | ||
===Nuget Package=== | |||
The Phidget22.NET library is available as a [https://www.nuget.org/packages/Phidget22.NET/ nuget package]. This is the recommend way to install and manage the Phidget22.NET library. | |||
===Library Files=== | |||
If you would like to manually manage the Phidget22.NET library files, you can download them [https://cdn.phidgets.com/downloads/phidget22/libraries/windows/Phidget22-windevel.zip here]. | |||
== | ==Development Environment Configuration== | ||
===Visual Studio=== | |||
{| style="margin:auto;" class="table-no-border mw-collapsible mw-collapsed" | |||
|+ '''Instructions''' | |||
| {{hiddenh4|Start with the Code Samples}} || | |||
|- | |||
| One of the best ways to start programming with Phidgets is to use our [https://www.phidgets.com/?view=code_samples&lang=VBNET example code] as a guide. Download the example(s) that correspond to your Phidget's channel classes. You can find them listed on the enclosure in most cases, or on the API tab of the product page. || [[Image:Language_vb_sample.jpg|center|350px|link=https://cdn.phidgets.com/docs/images/4/42/Language_vb_sample.jpg]] | |||
|- | |||
| Unpack and open the example project and click the Start button. The application will open the Phidget, list basic information about the Phidget, and demonstrate the Phidget's functionality. || [[Image:Language_vb_start.png|center|350px|link=https://cdn.phidgets.com/docs/images/b/ba/Language_vb_start.png]] | |||
|- | |||
| {{hiddenh4|Editing the Examples}} || | |||
|- | |||
| The Visual Basic .Net examples are derived from the Windows [[Phidget Control Panel]], so you'll need to modify a few things to adapt them for your own purposes. To begin with, you can remove the following line: || | |||
|- | |||
|colspan="2"| <syntaxhighlight lang=vbnet>commandLineData phidgetParameters = open.parseCmdLine(); //get command line parameters</syntaxhighlight> || | |||
|- | |||
|colspan="2"| Then, you can modify any line that mentions phidgetParameters by setting it to the desired value instead of using PhidgetParameters object. || | |||
|- | |||
|colspan="2"| For instance:<syntaxhighlight lang=vbnet>Try 'set all the values grabbed from command line. these values have defaults that are set in ExampleUtils.vb, you can check there to see them | |||
device.Channel = phidgetParameters.Channel 'selects the channel on the device to open | |||
device.DeviceSerialNumber = phidgetParameters.SerialNumber 'selects the device or hub to open | |||
device.HubPort = phidgetParameters.HubPort 'selects th eport on the hub to open | |||
device.IsHubPortDevice = phidgetParameters.isHubPortDevice 'is the device a port on a vint hub? | |||
If phidgetParameters.isRemote Then 'are we trying to open a remote device? | |||
device.IsRemote = True | |||
Net.EnableServerDiscovery(ServerType.Device) 'turn on network scan | |||
If phidgetParameters.Password <> vbNullString And | |||
phidgetParameters.ServerName <> vbNullString Then | |||
Net.SetServerPassword(phidgetParameters.ServerName, phidgetParameters.Password) | |||
End If | |||
Else | |||
device.IsLocal = True | |||
End If | |||
=== | device.Open() 'open the device specified by the above parameters | ||
Catch ex As PhidgetException | |||
errorBox.addMessage("Error opening the device: " + ex.Message) | |||
End Try</syntaxhighlight> | |||
|- | |||
|colspan="2"| Might become: <syntaxhighlight lang=vbnet> Try | |||
device.Channel = 0 | |||
device.DeviceSerialNumber = 370097 | |||
device.HubPort = 0 | |||
device.IsHubPortDevice = True | |||
device.IsLocal = True | |||
device.Open() | |||
Catch ex As PhidgetException | |||
errorBox.addMessage("Error opening the device: " + ex.Message) | |||
End Try</syntaxhighlight> You can then manipulate the rest of the code as your application requires. | |||
|- | |||
| {{hiddenh4|Setting up a New Project}} || | |||
|- | |||
| When you are building a project from scratch, or adding Phidget functionality to an existing project, you'll need to configure your development environment to properly link the Phidget .NET library. Create a new VB Forms Application, open the NuGet package manager. || [[Image:Language_vb_nuget.png|center|350px|link=https://cdn.phidgets.com/docs/images/4/4e/Language_vb_nuget.png]] | |||
|- | |||
| On the following screen, click '''Browse''', search for Phidget22, and install the Phidget22.NET package. || [[Image:Language_vb_nuget_install.png|center|350px|link=https://cdn.phidgets.com/docs/images/7/74/Language_vb_nuget_install.png]] | |||
|- | |||
|colspan="2"| Then, you just need to add the following lines: <syntaxhighlight lang=vbnet>Imports Phidget22 | |||
Imports Phidget22.Events</syntaxhighlight> The project now has access to Phidgets. | |||
|} | |||
When you are building a project from scratch, or adding Phidget | |||
[[ | |||
[[ | |||
The project now has access to | |||
===Mono=== | ===Mono=== | ||
{| style="margin:auto;" class="table-no-border mw-collapsible mw-collapsed" | |||
|+ '''Instructions''' | |||
| {{hiddenh4|HelloWorld Example}} || | |||
|- | |||
|colspan="2"|First, download and unpack the [https://www.phidgets.com/downloads/phidget22/examples/dotnet/csharp/Manager/Phidget22_HelloWorld_CSharp_Windows_Ex.zip HelloWorld example] for VB. This example uses the [[Phidget Manager]] to list all Phidget channels that can be accessed by your computer. All other VB examples use Windows Forms, so they are not compatible with Mono. | |||
|- | |||
|Next, copy Phidget22.NET.dll from type the following location:<syntaxhighlight>C:\Program Files\Phidgets\Phidget22\Phidget22.NET.dll</syntaxhighlight>Place both the HelloWorld example and the Phidget22.NET.dll file in the same location. || [[Image:Language_vb_dll_folder.png|center|350px|link=https://cdn.phidgets.com/docs/images/8/89/Language_vb_dll_folder.png]] | |||
|- | |||
|colspan="2"|Open the command prompt at the folder location and enter the following command:<syntaxhighlight>vbnc /r:Phidget22.NET.dll Module1.vb</syntaxhighlight>This will create an executable file called Module1.exe. Type in the following command to run the example:<syntaxhighlight>mono Module1.exe</syntaxhighlight> | |||
|- | |||
|You should be able to see the channels of your Phidget listed when the program starts or whenever the Phidget is plugged in while the program is running.<br/><br/>Now that you've confirmed that your devices are properly connected, the next step is to download and edit sample code for your specific device. || [[Image:Language_vb_console.png|center|350px|link=https://cdn.phidgets.com/docs/images/5/5e/Language_vb_console.png]] | |||
|- | |||
| {{hiddenh4|Other Examples}} || | |||
|- | |||
| To download the code samples, visit [https://www.phidgets.com/?view=code_samples&lang=VBNET this page]. Download the example(s) that correspond to your Phidget's channel classes. You can find them listed on the enclosure in most cases, or on the API tab of the product page. || [[Image:Language_vb_sample.jpg|center|350px|link=https://cdn.phidgets.com/docs/images/4/42/Language_vb_sample.jpg]] | |||
|- | |||
|colspan="2"|The Visual Basic examples are derived from the Windows Phidget Control Panel, so you'll need to modify a few things to adapt them for your own purposes. To begin with, you can remove the following line: | |||
<syntaxhighlight lang=vbnet>commandLineData phidgetParameters = open.parseCmdLine(); //get command line parameters</syntaxhighlight>Then, you can modify any line that mentions '''phidgetParameters''' by setting it to the desired value instead of using PhidgetParameters object. | |||
|- | |||
|colspan="2"| For instance:<syntaxhighlight lang=vbnet>Try 'set all the values grabbed from command line. these values have defaults that are set in ExampleUtils.vb, you can check there to see them | |||
device.Channel = phidgetParameters.Channel 'selects the channel on the device to open | |||
device.DeviceSerialNumber = phidgetParameters.SerialNumber 'selects the device or hub to open | |||
device.HubPort = phidgetParameters.HubPort 'selects th eport on the hub to open | |||
device.IsHubPortDevice = phidgetParameters.isHubPortDevice 'is the device a port on a vint hub? | |||
If phidgetParameters.isRemote Then 'are we trying to open a remote device? | |||
device.IsRemote = True | |||
Net.EnableServerDiscovery(ServerType.Device) 'turn on network scan | |||
If phidgetParameters.Password <> vbNullString And | |||
phidgetParameters.ServerName <> vbNullString Then | |||
Net.SetServerPassword(phidgetParameters.ServerName, phidgetParameters.Password) | |||
End If | |||
Else | |||
device.IsLocal = True | |||
End If | |||
< | |||
< | |||
=== | device.Open() 'open the device specified by the above parameters | ||
Catch ex As PhidgetException | |||
errorBox.addMessage("Error opening the device: " + ex.Message) | |||
End Try</syntaxhighlight> | |||
|- | |||
|colspan="2"| Might become: <syntaxhighlight lang=vbnet> Try | |||
device.Channel = 0 | |||
device.DeviceSerialNumber = 370097 | |||
device.HubPort = 0 | |||
device.IsHubPortDevice = True | |||
device.IsLocal = True | |||
device.Open() | |||
Catch ex As PhidgetException | |||
errorBox.addMessage("Error opening the device: " + ex.Message) | |||
End Try</syntaxhighlight> You can then manipulate the rest of the code as your application requires. | |||
| | |- | ||
| {{hiddenh4|Setting up a New Project}} || | |||
[ | |- | ||
|colspan="2"| To start a project from scratch, or add Phidget functionality to an existing project, you'll need to include the Phidget .NET library by adding the following lines to your code:<syntaxhighlight lang=vbnet>Imports Phidget22 | |||
Imports Phidget22.Events</syntaxhighlight> | |||
|- | |||
| Next, copy Phidget22.NET.dll from the following location:<syntaxhighlight>C:\Program Files\Phidgets\Phidget22\Phidget22.NET.dll</syntaxhighlight> Place your program and the Phidget22.NET.dll file in the same location. || [[Image:Language_vb_dll_folder.png|center|350px|link=https://cdn.phidgets.com/docs/images/8/89/Language_vb_dll_folder.png]] | |||
|- | |||
| Open the command prompt at the folder location and enter the following command:<syntaxhighlight>vbnc /r:Phidget22.NET.dll Module1.vb</syntaxhighlight>This will create an executable file called '''Module1.exe'''. Type in the following command to run the example:<syntaxhighlight>mono Module1.exe</syntaxhighlight>The project now has access to Phidgets. | |||
|} | |||
==Code | ==Example Code== | ||
Navigate to our [https://www.phidgets.com/?view=code_samples&lang=VBNET Code Samples Page] to view and download code samples that are tailored to your specific device. These code samples all use Windows Forms, except for the "Hello World" manager example. | |||
== | ===Phidget Programming Basics=== | ||
{{PhidgetProgrammingBasicsLink}} | |||
==API== | |||
[{{SERVER}}/?view=api&lang=CSharp Phidget22 API] | |||
Latest revision as of 21:25, 13 March 2026
Get Started
With the Phidget22.NET library, it's easy to create VB applications that work with Phidget devices.
VB Libraries
Nuget Package
The Phidget22.NET library is available as a nuget package. This is the recommend way to install and manage the Phidget22.NET library.
Library Files
If you would like to manually manage the Phidget22.NET library files, you can download them here.
Development Environment Configuration
Visual Studio
Start with the Code Samples |
||
| One of the best ways to start programming with Phidgets is to use our example code as a guide. Download the example(s) that correspond to your Phidget's channel classes. You can find them listed on the enclosure in most cases, or on the API tab of the product page. | ||
| Unpack and open the example project and click the Start button. The application will open the Phidget, list basic information about the Phidget, and demonstrate the Phidget's functionality. | ||
Editing the Examples |
||
| The Visual Basic .Net examples are derived from the Windows Phidget Control Panel, so you'll need to modify a few things to adapt them for your own purposes. To begin with, you can remove the following line: | ||
commandLineData phidgetParameters = open.parseCmdLine(); //get command line parameters
|
||
| Then, you can modify any line that mentions phidgetParameters by setting it to the desired value instead of using PhidgetParameters object. | ||
For instance:Try 'set all the values grabbed from command line. these values have defaults that are set in ExampleUtils.vb, you can check there to see them
device.Channel = phidgetParameters.Channel 'selects the channel on the device to open
device.DeviceSerialNumber = phidgetParameters.SerialNumber 'selects the device or hub to open
device.HubPort = phidgetParameters.HubPort 'selects th eport on the hub to open
device.IsHubPortDevice = phidgetParameters.isHubPortDevice 'is the device a port on a vint hub?
If phidgetParameters.isRemote Then 'are we trying to open a remote device?
device.IsRemote = True
Net.EnableServerDiscovery(ServerType.Device) 'turn on network scan
If phidgetParameters.Password <> vbNullString And
phidgetParameters.ServerName <> vbNullString Then
Net.SetServerPassword(phidgetParameters.ServerName, phidgetParameters.Password)
End If
Else
device.IsLocal = True
End If
device.Open() 'open the device specified by the above parameters
Catch ex As PhidgetException
errorBox.addMessage("Error opening the device: " + ex.Message)
End Try
| ||
Might become: Try
device.Channel = 0
device.DeviceSerialNumber = 370097
device.HubPort = 0
device.IsHubPortDevice = True
device.IsLocal = True
device.Open()
Catch ex As PhidgetException
errorBox.addMessage("Error opening the device: " + ex.Message)
End Try
| ||
Setting up a New Project |
||
| When you are building a project from scratch, or adding Phidget functionality to an existing project, you'll need to configure your development environment to properly link the Phidget .NET library. Create a new VB Forms Application, open the NuGet package manager. | ||
| On the following screen, click Browse, search for Phidget22, and install the Phidget22.NET package. | ||
Then, you just need to add the following lines: Imports Phidget22
Imports Phidget22.Events
| ||
Mono
HelloWorld Example |
|
| First, download and unpack the HelloWorld example for VB. This example uses the Phidget Manager to list all Phidget channels that can be accessed by your computer. All other VB examples use Windows Forms, so they are not compatible with Mono. | |
Next, copy Phidget22.NET.dll from type the following location:C:\Program Files\Phidgets\Phidget22\Phidget22.NET.dll |
|
Open the command prompt at the folder location and enter the following command:vbnc /r:Phidget22.NET.dll Module1.vbmono Module1.exe | |
| You should be able to see the channels of your Phidget listed when the program starts or whenever the Phidget is plugged in while the program is running. Now that you've confirmed that your devices are properly connected, the next step is to download and edit sample code for your specific device. |
|
Other Examples |
|
| To download the code samples, visit this page. Download the example(s) that correspond to your Phidget's channel classes. You can find them listed on the enclosure in most cases, or on the API tab of the product page. | |
The Visual Basic examples are derived from the Windows Phidget Control Panel, so you'll need to modify a few things to adapt them for your own purposes. To begin with, you can remove the following line:
commandLineData phidgetParameters = open.parseCmdLine(); //get command line parameters
| |
For instance:Try 'set all the values grabbed from command line. these values have defaults that are set in ExampleUtils.vb, you can check there to see them
device.Channel = phidgetParameters.Channel 'selects the channel on the device to open
device.DeviceSerialNumber = phidgetParameters.SerialNumber 'selects the device or hub to open
device.HubPort = phidgetParameters.HubPort 'selects th eport on the hub to open
device.IsHubPortDevice = phidgetParameters.isHubPortDevice 'is the device a port on a vint hub?
If phidgetParameters.isRemote Then 'are we trying to open a remote device?
device.IsRemote = True
Net.EnableServerDiscovery(ServerType.Device) 'turn on network scan
If phidgetParameters.Password <> vbNullString And
phidgetParameters.ServerName <> vbNullString Then
Net.SetServerPassword(phidgetParameters.ServerName, phidgetParameters.Password)
End If
Else
device.IsLocal = True
End If
device.Open() 'open the device specified by the above parameters
Catch ex As PhidgetException
errorBox.addMessage("Error opening the device: " + ex.Message)
End Try
| |
Might become: Try
device.Channel = 0
device.DeviceSerialNumber = 370097
device.HubPort = 0
device.IsHubPortDevice = True
device.IsLocal = True
device.Open()
Catch ex As PhidgetException
errorBox.addMessage("Error opening the device: " + ex.Message)
End Try
| |
Setting up a New Project |
|
To start a project from scratch, or add Phidget functionality to an existing project, you'll need to include the Phidget .NET library by adding the following lines to your code:Imports Phidget22
Imports Phidget22.Events
| |
Next, copy Phidget22.NET.dll from the following location:C:\Program Files\Phidgets\Phidget22\Phidget22.NET.dll |
|
Open the command prompt at the folder location and enter the following command:vbnc /r:Phidget22.NET.dll Module1.vbmono Module1.exe | |
Example Code
Navigate to our Code Samples Page to view and download code samples that are tailored to your specific device. These code samples all use Windows Forms, except for the "Hello World" manager example.
Phidget Programming Basics
To learn more about the structure of the example code, visit our Phidget Programming Basics guide.