Installation and Basic Configuration

Prerequisites

Hardware Requirements
Software Requirements
Development Environment

Downloading and Installing the Software

Download and the First Installation Using a Standalone Installer




Prerequisites

Hardware Requirements

In terms of hardware requirements, the most important limitation is that imposed by the XNA framework. If you machine does not support DirectX 9.0c and Shader Model 1.1, you will not be able to execute graphical components that rely on those features. You may or may not be able to install the system and use other components (we have not tested our system on legacy platforms). For more detail on the hardware requirements, refer to the information on the Microsoft's DirectX and XNA web pages.

Note: The above requirement may prevent you from being able to run the system in a virtual machine under VMWare, Microsoft Virtual PC, or Microsoft Virtual Server. We don't keep track of the current status of the problem and have not tested our system on these platforms, and the last time we checked, the hardware still lacked adequate support.  


Software Requirements

Currently, our system is only supported on Windows XP/2003/Vista/2008/7. The system will work on 32-bit and 64-bit versions of the OS (although in the latter case it will do so using WOW64; currently, Microsoft's XNA libraries are not supported for true 64-bit applications). True 64-bit and Linux versions of the runtime with limited functionality will be available in the near future.

In order to simply run the platform (but not develop components for it), you will need to install the following minimum runtime components, in the order in which they are listed below (note you may also need to install the latest service packs).

  1. Microsoft .NET Framework 4.0
  2. Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)
  3. DirectX End-User Runtimes (February 2010)
  4. Microsoft XNA Framework Redistributable 4.0


Development Environment

In order to develop components for the platform, you should equip yourself with a recent version of Visual Studio and the relevant SDKs (Windows, DirectX). We recommend setting up the following environment.

  1. Microsoft Visual Studio 2010
  2. Microsoft Windows SDK for Windows Server 2008 and .NET Framework 3.5
  3. Microsoft DirectX SDK March 2009
  4. Microsoft XNA Game Studio 4.0
  5. Microsoft Visual Studio 2010 SDK

Components that are distributed as ISO can be installed by mounting ISO as a virtual drive, for example using (freeware) SlySoft's Virtual CloneDrive or the popular Daemon Tools.

Once you have installed this software, you can proceed.

To get source code using git, open source code tab and follow steps mentioned in this article


Now its time to setup some external paths:

  1. Open the Visual Studio solution 'BaseClasses.sln' located at: 'C:\Program Files\Microsoft SDKs\Windows\v6.1\Samples\Multimedia\DirectShow\BaseClasses'. Note that your version of windows may differ from 6.1, but it should not matter as long as the rest of the BaseClasses solution exists.
  2. Ensure the Solution Configuration at the top is set to 'Debug' and not 'Debug_MBCS' or other option.
  3. Now build the solution. Build -> Build Solution.
  4. Assuming there are no errors, you can close out of this solution now.
  5. Go back to the original Visual Studio window with the liveobjects project.
  6. Right click on the liveobjects project and click on the Properties.
  7. Configuration Properties -> VC++ Directories
  8. Select Include Directories and then select <Edit...>
  9. Add the following entries to the list, AT THE TOP and IN THIS ORDER FROM TOP TO BOTTOM (Note: your version of windows or SDK may be different)
    1. C:\Program Files\Microsoft SDKs\Windows\v6.1\Samples\Multimedia\DirectShow\BaseClasses
    2. C:\Program Files\Microsoft DirectX SDK (August 2008)\Include
    3. C:\Program Files\Microsoft SDKs\Windows\v6.1\Include
  10. Now select Library Directories and add the following entries to the list, AT THE TOP and IN THIS ORDER FROM TOP TO BOTTOM. (Note: your version of windows or SDK may be different)
    1. C:\Program Files\Microsoft SDKs\Windows\v6.1\Samples\Multimedia\DirectShow\BaseClasses\Debug
    2. C:\Program Files\Microsoft SDKs\Windows\v6.1\Lib
    3. C:\Program Files\Microsoft DirectX SDK (August 2008)\Lib\x86
  11. You are done with this. Click 'Ok' and return to the Source Control Explorer.

 

Note: Check whether all the VC++ projects in the solution received the above changes. If not, you have to assign these directories to all the VC++ projects.


The final task for build configuration is to install Cygwin (under the default C:\Cygwin) with the program "patch.exe" explicitly selected. This allows the liveobjects_7 project to build, as it depends on patching (with patch.exe) some .NET include files. After Installing Cygwin, you need to set following environment variable: "CYGWIN=nodosfilewarning"

You should now be able to build the liveobjects solution under the Debug Configuration with Platform set as Win32. Be sure that all these paths are set up for this configuration and platform.


Although not necessary, the following are also extremely useful for this type of development:

  1. Debugging Tools for Windows
  2. (set the system environment variable "_NT_SYMBOL_PATH" to value "SRV*c:\symbols*http://msdl.microsoft.com/download/symbols")
  3. SysInternals Suite (in particular the extremely useful "Process Explorer")
  4. Some scripting tools, ideally PowerShell and IronPython because they they natively support .NET
  5. Some network monitoring software, for example Ethereal

For some advanced configuration, you may also need to locate on your machine or download various additional administrative tools, such as "makecert.exe" or "httpcfg.exe".

For comfortable development, you will sometimes need to control the local firewall settings, and be able to run as a local "Administrator" on the machine on which you are developing your application. On Windows Vista, Windows 7 and Windows 2008, you may need to launch Visual Studio and Command Prompt in the "elevated" mode.

Debugging a Custom Live Objects Component

If you are working on a liveobjects component in your own, local solution, you can do the following to utilize Visual Studio debugging: 

Right click on the c# project in the solution explorer and select "Properties". Click on the "Debug" tab on the left hand side of the window that pops up. Under the "Start Action" section choose "start external program" and enter the path to the liveobjects.exe executable. If you installed liveobjects normally, the path will probably be something like "C:\liveobjects\bin\liveobjects.exe". Then, in the "Start Options" section, under "command line arguments" enter the path to the liveobject file that uses your code. Now you should be able to click "start debugging" and the Visual Studio debugger will start running the liveobject, stopping and any breakpoints specified.

One thing to note is that if you are getting different behaviors when running code in the debugger and executing it outside of visual studio, make sure the libraries being generated are being properly updated in the correct places. Visual Studio does not always update DLLs after a build. If this is happening, make sure that liveobjects.exe is not running and execute a "rebuild all".

Downloading and Installing the Software

Download and the First Installation Using a Standalone Installer

To perform the initial installation, you need to download a standalone "liveobjects.msi" file containing the installer here. After downloading, execute the file from an account with Administrative permissions (the installation involves registering two system services and writing a handful of registry entries). As long as you have satisfied all prerequisites, the installation should not go smoothly. If any errors occur, double-check whether you have the necessary runtime components, and whether older, beta versions of these components are still on the system, thus causing problems with loading libraries and resolving dependencies.


After installation, your machine is modified in the following manner:

  1. All binaries, configuration, content, and other files are gathered in one place, by default at "C:\liveobjects".
  2. A system service is installed that run under the SYSTEM account, by default are stopped, and is configured to start manually:
    1. "Live Distributed Objects". This service is mapped to file "\bin\liveobjects.exe" relative to the root installation folder, and it is simply a special instance of the live objects runtime that runs with the SYSTEM credentials and hosts service components shared by all processes on the current machine. The components to run in the system scope are collected in the "\services" folder, and include a simple local multicast server that you can use for running a demo or for debugging purposes.
  3. We register a number of COM components and modify the file associations, so that files with the ".liveobject" extension are executed by the liveobjects runtime when doubleclicked or launched from the console window.


To quickly run the demo check this post.

Last edited Apr 15, 2013 at 4:49 PM by heratgandhi, version 28

Comments

No comments yet.