Skip to main content
Inspiring
November 27, 2022
Question

When Saving in idml format CResponder::Respond sends kAfterOpenDocSignalResponderService service ID

  • November 27, 2022
  • 3 replies
  • 921 views

Hi,
I have a class derived from CResponder and I have overridden the Respond method. 
When saving an indd file the method is getting called with the servide ID 3602, but when an idml file is saved the Respond method is getting called with the service ID 3599 - 

(kAfterOpenDocSignalResponderService). Due to this I am unable to identify that it is actually trying to save an idml file. Any idea why this is hapenning? 

 

Thank you so much!

This topic has been closed for replies.

3 replies

Community Expert
December 4, 2022

Did the responses here solve your issue?

Inspiring
December 5, 2022

Hi, I was looking for an answer to find a solution for a bug in my software. I could not really test this, because I could not recreate the original issue any more. Suddenly everything started worked fine. Thanks everyone for your input. 

Community Expert
December 5, 2022

Hi @Chamari_Silva,

So what exactly do you see now? Is there any difference in terms of the signal ID recieved when you save an IDML vs an INDD file? Enlighten us with your findings, afterall this is a public forum, you give some you take some. You asked a question we made some suggestions, now you should(your time permitting ofcourse) ideally give us some information on what worked, what did not, so that this post holds some value for the next person who comes looking.

-Manan

-Manan
Legend
November 27, 2022

You don't save an IDML file, you export it. On export in background, the document is internally cloned, the clone is opened in a separate thread and the export works from that clone. You probably see the open document signal from that opening the clone.

If you want to detect the IDML export, watch out for kBeforeExportSignalResponderService where the signal is a kExportProviderSignalMgrBoss, most relevant data is in IID_IEXPORTPROVIDERSIGNALDATA.

Community Expert
November 27, 2022

Interesting, did you try using a observer, that might help. Also, can you share your responder code for testing.

-Manan

-Manan