Timeout?

Im creating a presentation that contains over 2000 slides. Is the program timing out as to why I cant get the slides to create. Works fine on the test server but that creates way less slides then the real data

Dear jmitchell421,

Do you get any exception, if yes, what is that? How many slides are created successfully?

What is the version of MS-PowerPoint, your source presentation created in?

Try to open your presentation and then save back with different name and then check if newly saved presentation works fine.

The code runs successfully … but on the live data it does not. It fails on the last line pres.write … where it saves to a file. It creates 1654 slides but if i try to create the full slide deck of over 2000 it fails. Ive saved it under many name chnging the name wont help since it is not saving it in the first place. Im using Powerpoint XP. There is no exception … after debugging it runs the last line of code the pres.write which takes over 20min to run and then it fails.

Any help with this issue??

Please provide some useful information. How it fails? What exception does it throw?
There can be too many reasons and we can’t help without reproducing it on our side.
May be there is shape identifiers overflow if you have so many slides.

In the output it states…

The thread 0xd4c has exited with code 0 (0x0)
A first chance exception of type ‘Sytem.Threading.ThreadAbortException’ occured in mscorlib.dll
An exception of of type ‘Sytem.Threading.ThreadAbortException’ occured in mscorlib.dll but was not handled in user code
The thread 0x758 has exited with code 0 (0x0).

This always happens on the las tline of code pres.write ( path & name of powerpoint)

It takes like an hour to run the slide generation program …I think i need to change some setting either in IIS or webconfig … i appreciate the help

i am using powerpoint 2003 now also if that makes any difference

Any other information needed? Anyone else had a similar problem?

I think you run your code on IIS? Then it has nothing to do with the Aspose stuff.

In IIS manager, Check the application pool -> properties -> health, and uncheck "Enable pinging". If enabled, a page request should be handled within this time frame (30 seconds by default).
Disabling the pinging allows your process to run longer. Downside: now you only have time until the browser times out and tries again. If and when that happens depends on the browser and its settings.
If it happens, you might get another page request and you might end up with multiple threads processing the query. This is not so much of a problem, they will abort if the connection is closed, but it is not a real solution either.

I would like to give you another suggestion. Because your process takes so long, i.m.h.o. you should provide a process monitor page, which pings the presentation generation process:

  • start the presentation creation on a separate worker thread
  • save that thread in the session
  • from the worker thread, store some progress info in the session object
  • redirect to a "process monitor page"
  • the browser comes then to this montor page
  • in this monitor page, you check the progress info in the session object
  • if the process has finished, redirect to a file download page or something alike
  • if the process is running, set a meta refresh tag in X seconds (e.g. 15 seconds). You can make it fancy, e.g. "now generating slide X of Y", time used, etc.

Hope this helps.

Alex