You got it almost right, the function looks like this (and can be found in EyeXActions.h):
TX_RESULT txLaunchConfigurationTool( TX_CONTEXTHANDLE hContext, TX_CONFIGURATIONTOOL configurationTool, TX_ASYNCDATACALLBACK completionHandler, TX_USERPARAM userParam )
To create a new profile, use
TX_CONFIGURATIONTOOL_CREATENEWPROFILE as the second argument.
There is a sample in the EyeX SDK for C/C++ called MinimalUserProfiles. It shows you how you can get the name of the current profile, list all available profiles, and change the current profile to another existing profile.