Tim
Tim

Reputation: 7

Build WinForms app with TeeChart .NET in GitHub action CI/CD pipeline (TeeChart registration issue)

I am writing a YAML script to execute as a GitHub action on push & pull_request... Standard stuff.

Everything else works perfectly. But I cannot build my UI assembly that contains TeeChart .NET. When I try it throws a licencing error. It needs certain registry entries.

On my development PC I have to run TeeRegV3.exe, a GUI app, and enter in licence number and password, then it creates the registry entries that allow my project to build (development licence).

As an aside, the separate run-time licence is embedded in the shipped EXE.

Building on a GitHub "runner" (VM) is problematic. I can't (easily) run the UI app and enter the required info. I don't want to use a self-hosted runner - setup and maintenance will be an initial and ongoing pain. I really want a command line way of getting these registry entries created. They are probably machine specific so not much point in trying to copy them from my development machine.

I can't find any info on their forums.

I can't find any similar question on SO, or the wider internet.

I can't contact Steema support as that benefit expired about 10 years ago (licence for use is perpetual).

Surely I'm not the only person who needs TeeChart to work in an automated CI/CD pipeline.

Any ideas guys 'n gals?

Thanks in advance.

Edit - error message as requested -

Resources\licenses.licx(1): error LC0004: Exception occurred creating type 'Steema.TeeChart.TChart, TeeChart, Version=3.5.3498.27368, Culture=neutral, PublicKeyToken=9c8126276c77bdb7' System.ComponentModel.LicenseException: An instance of type 'Steema.TeeChart.Chart' was being created, and a valid license could not be granted for the type 'Steema.TeeChart.Chart'. Please, contact the manufacturer of the component for more information.

As I said, it'll throw that if it doesn't find the registry entries I describe above, created by the TeeRegV3.exe GUI app...

As for posting the workflow as requested, ok sure, but it's not relevant hence not included in my original question... As I said, you just gotta build a project with TeeChart in it, on any machine, without having run the TeeRegTV3.exe GUI app / utility. The licencing error is not related to the GitHub action / workflow / runner environ per say, it's just about how to perform this registration action in an automated way, without needing a human to interact with this damn reg utility.

name: CI workflow

on:
  push:
    branches:
      - master
      - develop
  pull_request:
    branches:
      - master
      - develop
  workflow_dispatch:

jobs:
  build:
    runs-on: windows-latest

    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Setup MSBuild
        uses: microsoft/[email protected]

      - name: Setup NuGet
        uses: NuGet/[email protected]

      - name: Restore NuGet packages
        run: nuget restore "<Solution name>.sln"

      - name: Build solution
        run: msbuild "<App name>\<App name>.wixproj" /p:Configuration="Release" 
p:Platform="x64" /p:TargetFrameworkVersion="v4.7.2" /p:RestorePackages=true

And final request - min steps to reproduce - add TeeChart to a project, don't licence it, and hit compile.

Upvotes: 0

Views: 59

Answers (0)

Related Questions