Skip to main content
3-Newcomer
September 3, 2026
Question

ProEngineerConnect fails with PRO_TK_CANT_MODIFY (-48) on Creo 11 — worked fine on Creo 6/7

  • September 3, 2026
  • 1 reply
  • 34 views

Hi,

My async OTK C++ application calls:

cpp

pfcAsyncConnection_ptr conn = pfcAsyncConnection::Connect("", "", "", 10);

This fails every single time on Creo 11 with pfcXToolkitError, GetErrorCode() = -48 (PRO_TK_CANT_MODIFY), GetToolkitFunctionName() = "ProEngineerConnect".

The exact same code worked fine on Creo 6 and 7 — it only failed occasionally there when a feature dialog was open, never unconditionally like this.

Already checked:

  • PRO_COMM_MSG_EXE is set correctly (full path + filename), file exists
  • nmsd.exe and pro_comm_msg.exe are both running
  • No Windchill/PDM involved, purely local models
  • My app isn't registered as an auxiliary application (no protk.dat loaded via config.pro)

Question: Did something change in Creo 11's async connection handling (permissions, registration requirements, etc.) that would cause Connect() to fail unconditionally like this? Is protk.dat registration now required for async connect to work?

Thanks!

1 reply

RPN
18-Opal
September 6, 2026


You call

pfcAsyncConnection_ptr conn = pfcAsyncConnection::Connect("", "", "", 10);

 

You need only 4 arguments in cpp?

 

extern ProError ProEngineerConnect( char *proe_session_id, char *display,
                                    char *user, char *textpath,
                                    ProBoolean allow_random,
                                    unsigned int timeout_sec,
                                    ProBoolean *random_choice,
                                    ProProcessHandle *p_handle );

 

PRO_TK_CANT_MODIFY   - Cannot register connection with name server. If the 
                            environment variable PRO_COMM_MSG_EXE is not set, 
                            this value is returned