• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

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

Explorer ,
Nov 27, 2022 Nov 27, 2022

Copy link to clipboard

Copied

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!

TOPICS
How to , Import and export , SDK

Views

624

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Nov 27, 2022 Nov 27, 2022

Copy link to clipboard

Copied

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

-Manan

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guide ,
Nov 27, 2022 Nov 27, 2022

Copy link to clipboard

Copied

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.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 03, 2022 Dec 03, 2022

Copy link to clipboard

Copied

Did the responses here solve your issue?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 04, 2022 Dec 04, 2022

Copy link to clipboard

Copied

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. 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 04, 2022 Dec 04, 2022

Copy link to clipboard

Copied

Hi @Chamari253904353k85,

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

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 05, 2022 Dec 05, 2022

Copy link to clipboard

Copied

LATEST

Hi Manan,
The ID recieved is still same. The problem I had was that when saving as IDML a readwrite function of some class recieves IPMStream which always returns IsReading() true. So it did not save the information that I needed. I thought the issue might be that CResponder recieving kAfterOpenDocSignalResponderService when I try to save the file. But after few days it started working fine and I did not do any changes to the code to solve this particular issue (But I did some other bug fixes, may be that was the reason). Anyway I could not test with the given suggestion as the problem is already solved and I could not find out yet how exactly the problem got solved

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines