Trying to create drawing using ProDrawingFromTemplateCreate - exit with status PRO_TK_GENERAL_ERROR
int CreateDrawingFromTemplate()
{
ProError status;
ProMdl currMdl;
ProMdlType mdl_type;
ProMdlName mdlName;
ProDrawing drawing;
ProDwgcreateErrs errors;
ProMdlnameShortdata solid_model_data;
ProName predefined_template;
ProName name;
// Replace path with dummy placeholder
FILE* mf_logfile = fopen("C:\\dummy_path\\dummy_project\\dummy_log.txt", "w");
// Get current model
status = ProMdlCurrentGet(&currMdl);
fprintf(mf_logfile, "ProMdlCurrentGet returned status: %d\n", status);
if (status != PRO_TK_NO_ERROR) return status;
// Get model type
status = ProMdlTypeGet(currMdl, &mdl_type);
fprintf(mf_logfile, "ProMdlTypeGet returned status: %d\n", status);
if (status != PRO_TK_NO_ERROR) return status;
// Get model name
status = ProMdlMdlnameGet(currMdl, mdlName);
fprintf(mf_logfile, "ProMdlMdlnameGet returned status: %d\n", status);
if (status != PRO_TK_NO_ERROR) return status;
// Fill solid model data
ProUtilWstrcpy(solid_model_data.name, mdlName);
switch (mdl_type) {
case PRO_MDL_PART:
ProStringToWstring(solid_model_data.type, "PART");
break;
case PRO_MDL_ASSEMBLY:
ProStringToWstring(solid_model_data.type, "ASM");
break;
default:
ProStringToWstring(solid_model_data.type, "UNKNOWN");
break;
}
// Use dummy template and drawing names
ProStringToWstring(predefined_template, "dummy_template.frm");
ProStringToWstring(name, "dummy_drawing_name");
ProSolid solid;
status = ProSolidMdlnameInit(mdlName, (ProMdlfileType)mdl_type, &solid);
// Create drawing from template
status = ProDrawingFromTemplateCreate(name, predefined_template, &solid, PRODWGCREATE_DISPLAY_DRAWING, &drawing, &errors);
fprintf(mf_logfile, "ProDrawingFromTemplateCreate returned status: %d\n", status);
if (status != PRO_TK_NO_ERROR) return status;
fclose(mf_logfile);
return status;
}
Where am I going wrong?

