Specifying target properties

To set properties for a target, right-click the target in the System Tree and select Properties from the pop-up menu.

Close all painters

The tab pages in the target properties dialog box are disabled if any painters are open.

All target types have Library List and Deploy tabs. If there is more than one project in the target, you can use the Deploy tab page to specify which projects should be deployed and in which order.For more information about setting deploy properties for workspaces and targets, see Building workspaces.

.NET targets have a Run tab, where you select the project to be used for running and debugging the target. .NET targets also have a .NET Assemblies tab that you use to import .NET assemblies into the target.

Specifying the target's library search path

The objects you create in painters are stored in PowerBuilder libraries (PBLs). You can use objects from one library or multiple libraries in a target. You define each library the target uses in the library search path.

PowerBuilder uses the search path to find referenced objects at runtime. When a new object is referenced, PowerBuilder looks through the libraries in the order in which they are specified in the library search path until it finds the object.

On the Library List tab page of the Target Properties dialog box, you can modify the libraries associated with the current target.

To specify the target's library search path

  1. In the Workspace tab of the System Tree, right-click on the target containing your application and select Library List from the pop-up menu.

    The Target Properties dialog box displays the Library List tab page. The libraries currently included in the library search path are displayed in the list.

  2. Do one of the following:

    • Enter the name of each library you want to include in the Library Search Path list, separating the names with semicolons.

    • Use the Browse button to include other libraries in your search path.

    You must specify libraries using an absolute path. To change the order of libraries in the search path, use the pop-up menu to copy, cut, and paste libraries.

    Make sure the order is correct

    When you select multiple libraries from the Select Library dialog box using Shift+click or Ctrl+click, the first library you select appears last in the Library Search Path list and will be the last library searched.

    To delete a library from the search path, select the library in the list and use the pop-up menu or press Delete.

  3. Click OK.

    PowerBuilder updates the search path for the target.

    Where PowerBuilder maintains the library search path

    PowerBuilder stores your target's library search path in the target (.pbt) file in a line beginning with LibList; for example:

    LibList "pbtutor.pbl;tutor_pb.pbl";

Importing .NET assemblies

You can import .NET assemblies into .NET targets from the .NET Assemblies page in the Properties dialog box for the target. (Right-click on the target and select .NET Assemblies from the pop-up menu.)

Click the Browse button to open the Browse for a .NET Assembly dialog box, from which you can browse to import private assemblies with the .dll, .tlb, .olb, .ocx, or .exe extension. To import an assembly, select it and click Open. To import multiple assemblies, you must select and import them one at a time.

Click the Add button to open the Import .NET Assembly dialog box, from which you can import a shared assembly into your target. Assemblies must have a strong name. A strong name includes the assembly's identity as well as a public key and a digital signature. For more information about assemblies and strong names, see the Microsoft library at https://msdn.microsoft.com/en-us/library/wd40t7ad(v=vs.100).aspx.

To import an assembly, select it and click OK. To import multiple assemblies, you must select and import them one at a time.

You can also use the Import .NET Assembly dialog box to import recently used assemblies.

System Tree display

The System Tree shows the classes, methods, structures, and enumerations for C# assemblies that you import into your .NET targets. However, a language-related limitation affecting managed C++ assemblies prevents the System Tree from displaying members of classes, structures, and enumeration types. It also causes managed C++ classes to display as structures.

By default, the full name of each class in an assembly is displayed in the System Tree. If you prefer to show only the final name, add the following line to the [PB] section of your pb.ini file:

SystemTree_DotNetFullName=0

For example, with this setting the Microsoft.SQLServer.Server.DataAccessKind class in System.Data.dll displays as DataAccessKind. You can right-click the class and select Properties from the pop-up menu to display the full class name.