Readme Citrix Profiler SDK 1.2
Citrix Streaming Profiler SDK, Version 1.2
Readme
- License Agreement
- Finding Documentation
- Getting Support
- SDK Overview
- Installation Information
- Known Issues in this Release
License Agreement
The contents of the Citrix Streaming Profiler SDK are licensed to you, the end user. Use of the SDK is subject to the terms and conditions of the End User License Agreement (EULA) accompanying this SDK and located in the \License subdirectory. Before you access or use the SDK, you must read and accept the terms of the EULA. If you do not accept these terms, you are not authorized to use the SDK.
Finding Documentation
The ProfilerSDK.chm help file is included in the download with the Profiler SDK. To open this help system, double-click the ProfilerSDK.chm file.
Getting Support
Citrix provides technical support primarily through Citrix Solutions Network (CSN) channel partners. Contact your supplier for first-line support or use Citrix Online Technical Support to find the nearest Citrix Solutions Advisor.
Citrix offers online technical support services on the Citrix Support Web site. The Support page includes links to downloads, the Citrix Knowledge Center, Citrix Consulting Services, and other useful support pages.
The Citrix CommunityWeb site is the home of the Citrix Developer Network and all technical resources and discussions involving the use of Citrix SDKs. You can find access to SDKs, sample code and scripts, extensions and plug-ins, and SDK documentation. Also included are the Citrix Developer Network forums, where technical discussions take place around each of the Citrix SDKs.
SDK Overview
What this SDK Includes
The Profiler SDK offers a set of COM objects and interfaces that give Citrix customers, distributors, and partners a programmatical interface into the Citrix Application Streaming Profiler. Using the Profiler SDK to create large numbers of profiles in one batch can be more efficient than creating them through the user interface. Developers can write in a platform-independent medium, and scripts can be written in C++, C#, or Visual Basic (VB) Script.
The Profiler SDK also includes sample applications that demonstrate key concepts for using the SDK such as creating a new profile and editing an existing profile. Binaries and source code accompany these samples, providing you a starting point for your own development efforts.
Before You Start
To use this SDK, you are expected to understand how to use the Citrix Streaming Profiler to create and manipulate profiles. At a minimum, you should understand how to:
- Launch the Profiler utility
- Run an application installer capturing its installation activities
- Store the newly created profile to a network file server where it can be referenced for publishing
In addition, you should understand application publishing using the Access Management Console of Citrix XenApp and have the ability to launch a published application on a client desktop or the computer running XenApp.
The Profiler SDK provides a subset of the overall functionality provided by the Profiler utility and exposes the profiling APIs exposed by RADEPkg.dll. The SDK can be used by Citrix customers, distributors, and partners to access programmatically and manipulate profiles used in application streaming.
Note: Not all the functionality available in the Profiler utility is available in this SDK. For example, to set a pre-launch analysis, sign packages, or modify the default isolation rules, you must open and modify the profile in the Profiler utility.
Installation Information
Installing the SDK
Note: Before you install the Profiler SDK, you must first install the Streaming Profiler (Citrix Streaming Profiler.msi) on the server you will use to create application profiles. The Streaming Profiler installer is located in the Citrix Streaming Profiler directory on the Citrix XenApp installation media.
To install the Profiler SDK:
- Download the SDK and unzip the package in a temporary location.
- Read the EULA.rtf. Your use of the SDK implies your acceptance of the license.
- The following three components are needed in the location where your compiler will find them:
- RadeSDK.dll. Copy this file to the Streaming Profiler folder. You must also register this .DLL with the system, using the Windows regsvr32 command:
regsvr32 radesdk.dll - RadePKG.dll. This .DLL is installed automatically when the Profiler is installed.
- *RadeSDK.tlb.*This type library is required to use the SDK in a C++ development environment. Copy this file to the Streaming Profiler folder.
- RadeSDKpia.dll. Copy this file to the same directory as the application. This file provides COM InteropServices to .NET applications.
- RadeSDK.dll. Copy this file to the Streaming Profiler folder. You must also register this .DLL with the system, using the Windows regsvr32 command:
- Copy the ProfilerSDK.chm documentation file to a convenient location on your workstation.
As you begin using the SDK, refer to the ProfilerSDK.chm documentation, which includes an overview of application streaming, SDK overview, and language reference.
For more information about profiling applications for streaming using the Profiler utility and publishing profiled applications for streaming using XenApp, refer to the Citrix Application Streaming Guide, located at http://support.citrix.com/article/CTX113700.
Basic Steps for Creating an Application Profile
The Profiler SDK views a profile as a set of collections that serve as containers for their respective data, and offer a standardized method of adding, removing, and iterating through profile data. For example, a profile contains a collection of targets (client workstation environments), each of which contains a collection of scripts and a collection of target applications.
Follow these basic steps to create a profile with the Profiler SDK. Refer to the documentation for descriptions and syntax of the properties and methods.
This template supports a number of frequently used nested list formats that you can also apply from the formatting toolbar rather than having to code it manually.
- Create a profile and the targets associated with that profile.
- Fill in the required data members of that profile with required and optional parameters (for example, language and operating system parameters for the target).
- Run the installer for each target.
- Run Discovery on (or manually configure) each target. Discovery looks at all targets and locates information such as shortcuts, registry information, and FTAs.
- Perform any additional customizations.
- Save the profile to a network file share where it can be accessed by users.
The result is a profile with applications ready to be published in XenApp.
See the "Example" topic for sample text that demonstrates this sequence. Similar steps can be performed on existing profiles, such as adding targets or having service packs applied to existing targets.
Known Issues in this Release
The following is a list of known issues in this release. Read it carefully before installing the product.
- Running the Profiler SDK on 64-bit platforms has the following restriction:
Currently the Profiler SDK is available for 32-bit platforms only. To run .NET applications built with the Profiler SDK on 64-bit platforms, build the application with an x86 configuration. When you run the application on a 64-bit platform, the application will run as a 32-bit binary.
- You must manually add target-level applications:
You cannot manually add target-level applications to a profile in this release of the Profiler SDK. This restriction is a result of the way icon information is extracted into a profile. As a workaround, you can create a "dummy" shortcut inside the virtual file system. For example, you can create a shortcut on the local file system that points to the expected executable path, which does not have to exist on the local file system. Your SDK application can then copy this file into the virtual drive with code such as the following:
String local_shortcut_file = @"C:\SDK_files\notepad.exe.lnk";
String virtual_shortcut_destination = target.BuildLocation +
@"\Device\C\Documents and Settings\All Users\Start Menu\
Programs\Notepad\notepad.exe.lnk";
File.Copy(local_shortcut_file, virtual_shortcut_destination);
Note that the local shortcut you create must point to the location where the application executable would appear on the virtual drive, such as:
"C:\applications\notepad.exe."
- You must manually add File Type Associations (FTAs):
This release has a restriction against programmatically adding FTAs at the target level. As a workaround, you can manually edit the manifest (.profile) file to add target level FTAs. If you need to add FTAs programatically at the package level, you must add the FTA manually at the target level for the package to be valid and in a consistent state.
The .profile file contains XML-formatted information. As a result, an SDK user can add XML information to this file in some cases. For example, if an FTA associates "notepad.exe" with ".txt" extensions, you can insert the following code in place of the <FTA> segment of [Package/Apps/App] and [Package/Targets/Target/Apps/App]:
<FTAs> <FTA> <Name>NOTEPAD.TXT</Name> <Description>Standard Text File</Description> <Extensions> <Extension>.txt</Extension> </Extensions> <MimeTypes /> <Executables> <Executable>NOTEPAD.EXE</Executable> </Executables> </FTA> </FTAs>
With this XML code inserted into the .profile file, the FTAs associated with an application are properly publishable.
Add Comment