tortoise.png (37479 bytes)

Download package

Watch Video: https://www.youtube.com/watch?v=SfEIKFUnEvU


CODESYS Forge (or short cforge) is a small tool which should help developers and users to use the services offered on CODESYS Forge.
cforge is basically written in C# but can be extended with IronPython scripts. As it makes use of IronPython and MS Scripting, you might have problems running it on anything else than Windows.


cforge itself is packed as a CODESYS package. That leads to the most important prerequisite: CODESYS programming system has to be installed on your PC.
There are different ways of installing cforge to your PC.


To make full use of the cforge functionality, you need:

Make sure to install the command line tools to your PATH:

Installation via CODESYS package

If you have no cforge installed before, just use the "cforge<...>.package" and let CODESYS do the installation:


Download the cforge package in your browser:
current development cforge package
Please see also the tags code repository for "releases" of cforge tool.

Install Package

Double click on the (or execute the) cforge package file and let CODESYS install the package.


cforge helps developers in several reoccuring tasks of maintaining their CODESYS software.


You can always use the standard mechanisms of the CODESYS SVN package to check your projects out. But with cforge you can easily checkout a folder, containing multiple libraries.

You will end up with a folder with projects, that are up to date and have the right connection to the SVN repository that you just checked out.

Import / Commit

Again, you can use the standard mechanism of CODESYS SVN to commit your changes on your projects. But here cforge has several advantages:

  • You can import or check in several projects and libraries at once
  • cforge will also commit every project in binary form, containing the SVN connection settings to your repository
  • cforge will commit a Markdown file, containing an export of the source code

(these files are generated)


You can also use cforge to automate your release process a bit. cforge can use the tagged projects to prepare compiled libraries, which have the released flag set.

So, a release with cforge can look like:

  • Create a branch from current trunk
  • Checkout this branch
  • Enter the checkout directory and run "cforge release -r"
  • Optionally also.run "cforge package package.manifest"
  • Commit your changes with "cforge commit"
  • Tag branch with Tortoise to "tags/vx.x.x.x/"

Doing the same w/o cforge would need a lot more manual interaction:

  • Checkout every single project and library
  • Set the release flag in all libraries
  • Save all libraries as compiled library
  • Update a package manifest
  • Create a CODESYS package from the manifest
  • Commit the sources with CODESYS SVN
  • Commit the compiled libraries, packages and project files with an external SVN client


Watch Video: https://www.youtube.com/watch?v=UvH572rz1Ng
Watch Video: https://www.youtube.com/watch?v=6NzHBWH5I1c


To be cleaned up later:

Debug cforge

As it is a C# tool, just use Microsoft VisualStudio to run / attach to your local cforge instance.
There is a nice trick: just lay a file named "debug" (content does not matter) next to the cforge.exe and it will patiently wait when started (e.g. from the browser via a "cforge:" url), so that you have time to attach. Then just press Enter in the console (as it is mentioned there), and continue to debug.
Then you can even debug the IronPython scripts.


Home: IndexMain