Jump to content

ProjectItem: Difference between revisions

From LabVIEW Wiki
Dnatt (talk | contribs)
mNo edit summary
Dnatt (talk | contribs)
m Alphabetized list by Type String column (first column)
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The '''ProjectItem''' class in VI Server allows you to inspect and modify items that appear in the Project window, such as VIs, virtual folders, classes, libraries, etc.
A '''Project Item''' is an individual item in a [[LabVIEW Project]], [[LabVIEW Project Library]], [[LabVIEW Class]], or [[XControl]].  A Project Item can be one of many types with an associated type GUID.  The [[ProjectItem class]], [[ProjectItem class/Type String property|Type String Property]] can be used to get the ''Type String''.  The [[ProjectItem class]], [[ProjectItem class/Type GUID property|Type GUID Property]] can be used to get the ''Type GUID''.  In cases where no Type String exists the [[ProjectItem class/Type String property|Type String Property]] returns the Type GUID.


If you have a reference to a ProjectItem, you can read the ''TypeString'' property of the item to identify what kind of item it is:
The ''Type String'' is used in the [[ProjectItem class]], [[ProjectItem class/Get All Descendents method|Get All Descendents method]] to get a filtered list of the Descendents by the inputted type.  A list of valid ''Type Strings'' with associated ''Type GUIDs'' are listed below. (Add to this list as more are discovered.)
 
[[File:TypeString property.png]]
 
This is the same string you can use for the ''Type'' parameter of the ''Get All Descendents'' method of the ProjectItem class to get all children of a ProjectItem that match a specific type:
 
[[File:Get All Descendents method.png]]
 
The following table lists valid ''TypeString'' values and their descriptions. Update this table with new type strings as you discover them.


{| class="wikitable"
{| class="wikitable"
|-
|-
! TypeString !! Description
! Type String
! Type GUID
! Description
|-
| Ability VI
| {DAABD3DA-4F44-4C3D-8BA3-E5D035A4F27A}
| Ability VI within an XControl or XNode
|-
| BeagleBone Black
|
| BeagleBone Black target (available with the [[LabVIEW LINX|LINX Toolkit]])
|-
| Build
| {0C750917-83D7-9871-8908-BB4ED6A8099B}
| Build Specifications node under every target
|-
| Class Private Data
| {64A9BF48-4C55-45DB-8F18-9C796DA0C113}
| Private Data Control inside a LabVIEW Class
|-
| Compact Vision System Target
|
| Real-Time Compact Vision System target
|-
| CompactRIO Ethernet Device
|
| Ethernet RIO target
|-
| CompactRIO Windows
|
| Windows CompactRIO target
|-
| cRIO Chassis
|
| CompactRIO Chassis under a cRIO RT target
|-
| Dependencies
| {0D75D917-83D7-9871-AA09-A0FFD6A8099B}
| Dependencies node under every target
|-
| Directives
|
| Directives items created for VIs by FPGA IP Builder
|-
| DLL
| {20A41099-3F2C-42C3-9544-7ABCC1E6CB0D}
| Shared Library (DLL) node under Build Specifications
|-
| Document
| {D60740D6-F255-4BBC-5675-8858F35B820E}
| Includes:
* Another [[LabVIEW Project]] [[LVLIB File Extension|''(*.lvproj)'']] file when nested inside of a Project
* [[ALIASES File Extension|Aliases ''(*.aliases)'']]
* [[LVLPS File Extension|Local Projects Settings ''(*.lvlps)'']]
* [[LabVIEW Library|LabVIEW Libraries]] [[LLB File Extension|''(*.llb)'']] (Depending on how it was added to the Project)
* [[Run-time Menu]] [[RTM File Extension| ''(*.rtm)'']]
* other Non-LabVIEW files, like images, text files, etc.
|-
| ECATEbusSlave
|
| EtherCAT slave device
|-
| ECATEnetSlave
|
| EtherCAT slave device
|-
| ECATMaster
|
| EtherCAT master device
|-
| Elemental IO
|
| IO Resource under an FPGA target
|-
| elvisRIO Chassis
|
| Chassis under an ELVIS RIO target
|-
| Embedded Vision System Target
|
| NI Embedded Vision System target
|-
|EXE
|{9A75366A-79D3-4BFD-9532-E3070185C1E8}
|Application (EXE) node under Build Specifications
|-
| Folder
| {D60740D6-F254-4BBC-5675-8858F35B820E}
| Includes:
* [[Auto-populating Folder]]s,
* [[Virtual Folder]]s
* [[LabVIEW Library|LabVIEW Libraries]] [[LLB File Extension|''(*.llb)'']] (Depending on how it was added to the Project)
|-
| FPGA Base Clock
|
| Base clock under an FPGA target
|-
| FPGA Component Level IP
|
| RIO DRAM
|-
| FPGA Derived Clock
|
| Derived clock under an FPGA target
|-
| FPGA FIFO
|
| FIFO node under an FPGA target
|-
| FPGA Generic Target
|
| Networked Computer/Device target
|-
| FPGA Memory Block
|
| Memory node under an FPGA target
|-
| FPGA Register
|{730535F4-F2D1-43C7-8D98-0EBD6BAE3470}
| Register item under an FPGA target
|-
| FPGA Target
|
| FPGA target (R-series device, cRIO target, etc.)
|-
|HTTP WebResources Container
|{CC977D9A-0BF1-470B-B5A7-DF1D00EF9C9B}
|Web Resources folder under a Web Service node
|-
| Hyperlink
| {CC472C20-0441-48DC-AF25-3E82ECC9376F}
|
|-
| IO Server
|
| I/O Server node under a target
|-
|Installer
|{B912C944-F9D3-49E7-B0A6-073ED50A150B}
|Installer node under Build Specifications
|-
| IP Builder Target
|
| IP Builder node under an FPGA target
|-
| Library
| {ABC740D6-F254-4BBC-5675-8858F35B820E}
| [[LabVIEW Project Library]] [[LVLIB File Extension|''(*.lvlib)'']]
|-
|-
| Build || the Build Specifications node under every target
| LibraryData
| {AE832914-DFCB-471F-930C-C57747746FF2}
| Hidden ProjectItem that contains internal information about an LVStatechart library
|-
|-
| cRIO Chassis || RT CompactRIO Target
| Localhost
|
| In some projects with a Real-Time target, the 'My Computer' target will have a type of 'Localhost' instead of 'My Computer'.
|-
|-
| Dependencies || the Dependencies node under every target
|LVClass
|{EFD740D6-F254-4BBC-5675-8858F35B820E}
|Includes: [[LabVIEW Class]] [[LVCLASS File Extension|''(*.lvclass)'']] and [[Interface (object-oriented programming)|Interfaces]]
|-
|-
| Directives || Directives items created for VIs by FPGA IP Builder
| LVLibp
| {CF31838A-5E97-4315-AE50-9EBA613BCBBB}
| [[Packed Project Library]] [[LVLIBP File Extension|''(*.lvlibp)'']]
|-
|-
| DLL || the Shared Library (DLL) node under Build Specifications
| LVStatechart
| {FB056C2C-833C-414C-8330-397F164A5211}
| [[LabVIEW StateChart]] [[LVSC File Extension|''(*.lvsc)'']]
|-
|-
| Document || non-LabVIEW files, like images, text files, etc.
| LVStatechartVIItem
| {FB056C2D-833C-414C-8330-397F164A5211}
| Hidden ProjectItem that contains internal information about an LVStatechart library
|-
|-
| ECATEbusSlave || EtherCAT slave device
| Method VI
| {DAABD3DC-4F44-4C3D-8BA3-E5D035A4F27A}
| Method VI in an XControl
|-
|-
| ECATEnetSlave || EtherCAT slave device
| Module Container
|
| Real-Time Scan Resources node under an RT Chassis
|-
|-
| ECATMaster || EtherCAT master device
| My Computer
| {CEFE1B10-1732-4678-A70A-299293455410}
| My Computer node under the root Project
|-
|-
| EXE || the Application (EXE) node under Build Specifications
| NI-DAQmx Channel
| {B5F05770-7C71-3A03-C9FB-F73F35629FC1}
| DAQmx Virtual Channel
|-
|-
| Elemental IO ||
| NI-DAQmx Scale
| {BC977C97-1833-3D51-4EF6-D82E6838A8F3}
| DAQmx Scale
|-
|-
| FPGA Base Clock ||
|NI-DAQmx Task
|{0A806145-1BF3-3A50-0B5E-F969F56C8E2A}
|DAQmx Task
|-
|-
| FPGA Component Level IP ||
| Packed Library
| {E4492117-CED3-4F31-9F8D-E2118AE04F12}
| Packed Library node under Build Specifications
|-
|-
| FPGA Derived Clock ||
| Project
| {D60740D6-F254-4BBC-9975-8858F35B810E}
| Root project item at the top of the [[Project Explorer]] for the [[LabVIEW Project]]
|-
|-
| FPGA FIFO ||
| Property Definition
| {81C68620-8BE3-4643-B04A-4E83AA6363D2}
| Property definition folder under a [[LabVIEW Class]]
|-
|-
| FPGA Memory Block ||
| Property Folder
| {D60740D6-F254-4BBC-5675-8858F35B820E}
| Property folder in an [[XControl]]
|-
|-
| FPGA Target ||
| Property VI
| {DAABD3DB-4F44-4C3D-8BA3-E5D035A4F27A}
| Property VI in an [[XControl]]
|-
|-
| Folder || A virtual folder or an auto-populating folder
| Raspberry Pi 2 B
| {838AE6B2-6884-4111-A0FB-AF9B59F4094F}
| Raspberry Pi 2 B target (available with the [[LabVIEW LINX|LINX Toolkit]]). Includes Raspberry Pi 3 B+ and 4 B+
|-
|-
| HTTP WebResources Container ||
| RIO C Series Module
|
| CompactRIO module that appears under the FPGA Target node under an RT CompactRIO target
|-
|-
| IP Builder Target ||
| RIO Subresource
|
| Resource under a RIO module. For example, an SD Card node.
|-
|-
| Installer || the Installer node under Build Specifications
|Robotics Environment Simulator
|
|Simulated robot device
|-
|-
| LVClass || A LabVIEW class
| RT CDAQ Chassis
|
| Real-Time CompactDAQ Chassis target
|-
|-
| Library || A LabVIEW project library
| RT CompactRIO
|
| RT CompactRIO target
|-
|-
| Localhost ||
| RT Desktop
|
| Real-Time Desktop target
|-
|-
| LVStatechart || A LabVIEW StateChart Module library
| RT elvisRIO
|
| ELVIS RIO target
|-
|-
| Module Container ||
| RT FlexRIO
|
| Real-Time FlexRIO target
|-
|-
| My Computer || The My Computer node under the root Project
| RT Generic
|
| Generic RT Target
|-
|-
| Packed Library || A packed project library (PPL)
| RT Industrial Controller
|
| Real-Time Industrial Controller target
|-
|-
| Project || The root project item at the top of the Project Explorer
| RT myRIO
|
| myRIO target
|-
|-
| RIO C Series Module ||
| RT PXI Chassis
|
| RT PXI Target
|-
|-
| RIO Subresource ||
| RT roboRIO
|
| roboRIO target
|-
|-
| RT CompactRIO ||
| RT Single-Board RIO
|
| RT Single-Board RIO Target
|-
|-
| RT Generic ||
| sbRIO Chassis
|
| Single-Board RIO Chassis that appears under an RT Single-Board RIO target
|-
|-
| RT PXI Chassis ||
| Smart Camera Target
|
| Real-Time Industrial Smart Camera Target
|-
|-
| RT Single-Board RIO ||
| Source Distribution
| {15DA4F9E-0591-4AB1-A339-C3B4D54902D8}
| Source Distribution node under Build Specifications
|-
|-
| Robotics Environment Simulator || Simulated robot device
| Startup VIs Container
| {F0D505FA-F9AD-43D8-8811-2F23BBC4C8A2}
| Startup VIs folder under a Web Service node
|-
|-
| sbRIO Chassis ||
| Target Folder
| {AB0740D6-F254-4BBC-5675-8858F35B820E}
|
|-
|-
| Source Distribution || the Source Distribution node under Build Specifications
| TestItem
| {39B74B88-DF2D-4BA8-BEB5-FD65FC0FD56D}
| Test file from the Unit Test Framework [[LVTest File Extension| ''(.lvtest)'']]
|-
|-
| Startup VIs Container ||
| TestVectorItem
| {50E0C210-38A2-420B-AB4E-3BEFFC710090}
| Test vector file from the Unit Test Framework [[LVTest File Extension| ''(.lvvect)'']]
|-
|-
| TestItem ||
| TouchPanel
|
| Touch Panel target
|-
|-
| TestVectorItem ||
|Variable
|9BA597C5-4996-4622-B9BB-444431834D0D}
|Variable node under a library or a target. Includes shared variables, I/O Variables, and more.
|-
|-
| TouchPanel ||
| VI
| {D60740D6-F254-4BBC-5675-8858F35B810E}
| Includes:
* [[VI]]s [[VI File Extension| ''(.vi)'']]
* [[CTL File Extension|Controls ''(*.ctl)'']]
* [[Polymorphic VI]]s
* [[Malleable VI]]s [[VIM File Extension| ''(.vim)'']]
* [[Global Variable]]s
* [[VI Template]]s [[VIT File Extension| ''(.vit)'']]
|-
|-
| VI || A Virtual Instrument (VI)
| Web Service
| {2386AD17-A358-4EA9-86F1-7808B4D5B5ED}
| Web Service node
|-
|-
| Variable ||
| XControl
| {2E4BD3AC-4E04-45C9-B6C5-AD138962C435}
| [[XControl]]
|-
|-
| Web Service ||
| XNode
| {35CAD751-77A8-4D0F-BF61-85A48475F6A5}
| [[XNode]]
|-
|-
| XControl || An XControl library
| Zip File
| {51F0E16F-7FA4-4E9F-AE30-C81D9D0444B0}
| Zip File node under Build Specifications
|-
|-
| XNode || An XNode library
| .NET Interop Assembly
| {0E6E9692-2CDC-4645-B4F6-93F9260BF6FA}
| .NET Interop Assembly node under Build Specifications
|-
|-
| Zip File || the Zip File node under Build Specifications
|{117D6E82-86E4-4435-99C8-B638EE47B29E}
|{117D6E82-86E4-4435-99C8-B638EE47B29E}
|Real-Time Application node under Build Specifications (under a Raspberry Pi 2 B Target)
|-
|-
| .NET Interop Assembly || the .NET Interop Assembly node under Build Specifications
| {69A947D5-514E-4E75-818E-69657C0547D8}
| {69A947D5-514E-4E75-818E-69657C0547D8}
| Real-Time Application node under Build Specifications (under an RT Target)
|-
|-
| {69A947D5-514E-4E75-818E-69657C0547D8} ||
| {9C5E1E31-72F0-41E9-9B17-FFBE4626F549}  
| {9C5E1E31-72F0-41E9-9B17-FFBE4626F549}
| IP Build node under Build Specifications (under an IP Builder target)
|-
|-
| {9C5E1E31-72F0-41E9-9B17-FFBE4626F549} ||
| {CED73189-3D7D-4B2F-B6C9-EA03FBC59E14}  
| {CED73189-3D7D-4B2F-B6C9-EA03FBC59E14}
| Linux RT Package node under Build Specifications
|-
|-
| {E661DAE2-7517-431F-AC41-30807A3BDA38} || the Package node under Build Specifications
| {E661DAE2-7517-431F-AC41-30807A3BDA38}  
| {E661DAE2-7517-431F-AC41-30807A3BDA38}
| Package node under Build Specifications
|-
|-
| {F4C5E96F-7410-48A5-BB87-3559BC9B167F} ||
| {F4C5E96F-7410-48A5-BB87-3559BC9B167F}  
| {F4C5E96F-7410-48A5-BB87-3559BC9B167F}
| Compilation node under Build Specifications (under an FPGA target)
|}
|}


[[Category:VI Scripting]]
[[Category:Project]]

Latest revision as of 23:09, 25 February 2026

A Project Item is an individual item in a LabVIEW Project, LabVIEW Project Library, LabVIEW Class, or XControl. A Project Item can be one of many types with an associated type GUID. The ProjectItem class, Type String Property can be used to get the Type String. The ProjectItem class, Type GUID Property can be used to get the Type GUID. In cases where no Type String exists the Type String Property returns the Type GUID.

The Type String is used in the ProjectItem class, Get All Descendents method to get a filtered list of the Descendents by the inputted type. A list of valid Type Strings with associated Type GUIDs are listed below. (Add to this list as more are discovered.)

Type String Type GUID Description
Ability VI {DAABD3DA-4F44-4C3D-8BA3-E5D035A4F27A} Ability VI within an XControl or XNode
BeagleBone Black BeagleBone Black target (available with the LINX Toolkit)
Build {0C750917-83D7-9871-8908-BB4ED6A8099B} Build Specifications node under every target
Class Private Data {64A9BF48-4C55-45DB-8F18-9C796DA0C113} Private Data Control inside a LabVIEW Class
Compact Vision System Target Real-Time Compact Vision System target
CompactRIO Ethernet Device Ethernet RIO target
CompactRIO Windows Windows CompactRIO target
cRIO Chassis CompactRIO Chassis under a cRIO RT target
Dependencies {0D75D917-83D7-9871-AA09-A0FFD6A8099B} Dependencies node under every target
Directives Directives items created for VIs by FPGA IP Builder
DLL {20A41099-3F2C-42C3-9544-7ABCC1E6CB0D} Shared Library (DLL) node under Build Specifications
Document {D60740D6-F255-4BBC-5675-8858F35B820E} Includes:
ECATEbusSlave EtherCAT slave device
ECATEnetSlave EtherCAT slave device
ECATMaster EtherCAT master device
Elemental IO IO Resource under an FPGA target
elvisRIO Chassis Chassis under an ELVIS RIO target
Embedded Vision System Target NI Embedded Vision System target
EXE {9A75366A-79D3-4BFD-9532-E3070185C1E8} Application (EXE) node under Build Specifications
Folder {D60740D6-F254-4BBC-5675-8858F35B820E} Includes:
FPGA Base Clock Base clock under an FPGA target
FPGA Component Level IP RIO DRAM
FPGA Derived Clock Derived clock under an FPGA target
FPGA FIFO FIFO node under an FPGA target
FPGA Generic Target Networked Computer/Device target
FPGA Memory Block Memory node under an FPGA target
FPGA Register {730535F4-F2D1-43C7-8D98-0EBD6BAE3470} Register item under an FPGA target
FPGA Target FPGA target (R-series device, cRIO target, etc.)
HTTP WebResources Container {CC977D9A-0BF1-470B-B5A7-DF1D00EF9C9B} Web Resources folder under a Web Service node
Hyperlink {CC472C20-0441-48DC-AF25-3E82ECC9376F}
IO Server I/O Server node under a target
Installer {B912C944-F9D3-49E7-B0A6-073ED50A150B} Installer node under Build Specifications
IP Builder Target IP Builder node under an FPGA target
Library {ABC740D6-F254-4BBC-5675-8858F35B820E} LabVIEW Project Library (*.lvlib)
LibraryData {AE832914-DFCB-471F-930C-C57747746FF2} Hidden ProjectItem that contains internal information about an LVStatechart library
Localhost In some projects with a Real-Time target, the 'My Computer' target will have a type of 'Localhost' instead of 'My Computer'.
LVClass {EFD740D6-F254-4BBC-5675-8858F35B820E} Includes: LabVIEW Class (*.lvclass) and Interfaces
LVLibp {CF31838A-5E97-4315-AE50-9EBA613BCBBB} Packed Project Library (*.lvlibp)
LVStatechart {FB056C2C-833C-414C-8330-397F164A5211} LabVIEW StateChart (*.lvsc)
LVStatechartVIItem {FB056C2D-833C-414C-8330-397F164A5211} Hidden ProjectItem that contains internal information about an LVStatechart library
Method VI {DAABD3DC-4F44-4C3D-8BA3-E5D035A4F27A} Method VI in an XControl
Module Container Real-Time Scan Resources node under an RT Chassis
My Computer {CEFE1B10-1732-4678-A70A-299293455410} My Computer node under the root Project
NI-DAQmx Channel {B5F05770-7C71-3A03-C9FB-F73F35629FC1} DAQmx Virtual Channel
NI-DAQmx Scale {BC977C97-1833-3D51-4EF6-D82E6838A8F3} DAQmx Scale
NI-DAQmx Task {0A806145-1BF3-3A50-0B5E-F969F56C8E2A} DAQmx Task
Packed Library {E4492117-CED3-4F31-9F8D-E2118AE04F12} Packed Library node under Build Specifications
Project {D60740D6-F254-4BBC-9975-8858F35B810E} Root project item at the top of the Project Explorer for the LabVIEW Project
Property Definition {81C68620-8BE3-4643-B04A-4E83AA6363D2} Property definition folder under a LabVIEW Class
Property Folder {D60740D6-F254-4BBC-5675-8858F35B820E} Property folder in an XControl
Property VI {DAABD3DB-4F44-4C3D-8BA3-E5D035A4F27A} Property VI in an XControl
Raspberry Pi 2 B {838AE6B2-6884-4111-A0FB-AF9B59F4094F} Raspberry Pi 2 B target (available with the LINX Toolkit). Includes Raspberry Pi 3 B+ and 4 B+
RIO C Series Module CompactRIO module that appears under the FPGA Target node under an RT CompactRIO target
RIO Subresource Resource under a RIO module. For example, an SD Card node.
Robotics Environment Simulator Simulated robot device
RT CDAQ Chassis Real-Time CompactDAQ Chassis target
RT CompactRIO RT CompactRIO target
RT Desktop Real-Time Desktop target
RT elvisRIO ELVIS RIO target
RT FlexRIO Real-Time FlexRIO target
RT Generic Generic RT Target
RT Industrial Controller Real-Time Industrial Controller target
RT myRIO myRIO target
RT PXI Chassis RT PXI Target
RT roboRIO roboRIO target
RT Single-Board RIO RT Single-Board RIO Target
sbRIO Chassis Single-Board RIO Chassis that appears under an RT Single-Board RIO target
Smart Camera Target Real-Time Industrial Smart Camera Target
Source Distribution {15DA4F9E-0591-4AB1-A339-C3B4D54902D8} Source Distribution node under Build Specifications
Startup VIs Container {F0D505FA-F9AD-43D8-8811-2F23BBC4C8A2} Startup VIs folder under a Web Service node
Target Folder {AB0740D6-F254-4BBC-5675-8858F35B820E}
TestItem {39B74B88-DF2D-4BA8-BEB5-FD65FC0FD56D} Test file from the Unit Test Framework (.lvtest)
TestVectorItem {50E0C210-38A2-420B-AB4E-3BEFFC710090} Test vector file from the Unit Test Framework (.lvvect)
TouchPanel Touch Panel target
Variable 9BA597C5-4996-4622-B9BB-444431834D0D} Variable node under a library or a target. Includes shared variables, I/O Variables, and more.
VI {D60740D6-F254-4BBC-5675-8858F35B810E} Includes:
Web Service {2386AD17-A358-4EA9-86F1-7808B4D5B5ED} Web Service node
XControl {2E4BD3AC-4E04-45C9-B6C5-AD138962C435} XControl
XNode {35CAD751-77A8-4D0F-BF61-85A48475F6A5} XNode
Zip File {51F0E16F-7FA4-4E9F-AE30-C81D9D0444B0} Zip File node under Build Specifications
.NET Interop Assembly {0E6E9692-2CDC-4645-B4F6-93F9260BF6FA} .NET Interop Assembly node under Build Specifications
{117D6E82-86E4-4435-99C8-B638EE47B29E} {117D6E82-86E4-4435-99C8-B638EE47B29E} Real-Time Application node under Build Specifications (under a Raspberry Pi 2 B Target)
{69A947D5-514E-4E75-818E-69657C0547D8} {69A947D5-514E-4E75-818E-69657C0547D8} Real-Time Application node under Build Specifications (under an RT Target)
{9C5E1E31-72F0-41E9-9B17-FFBE4626F549} {9C5E1E31-72F0-41E9-9B17-FFBE4626F549} IP Build node under Build Specifications (under an IP Builder target)
{CED73189-3D7D-4B2F-B6C9-EA03FBC59E14} {CED73189-3D7D-4B2F-B6C9-EA03FBC59E14} Linux RT Package node under Build Specifications
{E661DAE2-7517-431F-AC41-30807A3BDA38} {E661DAE2-7517-431F-AC41-30807A3BDA38} Package node under Build Specifications
{F4C5E96F-7410-48A5-BB87-3559BC9B167F} {F4C5E96F-7410-48A5-BB87-3559BC9B167F} Compilation node under Build Specifications (under an FPGA target)