Com Error - 0X80080005 & Bartend.exe Doesn't Stop フォローする

0
Avatar
Legacy Poster

We have a bartender server setup in a Web Service and it seems to be working pretty well. However once and a while we get this exception:  

 

Retrieving the COM class factory for component with CLSID {B9425246-4131-11D2-BE48-004005A04EDF} failed due to the following error: 80080005 Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE))

 

The line that it fails on is:

BarTender.Application btApp = new BarTender.Application();

 

It looks like it does actually start the application as we have a BarTend.exe application now running in task manager that never shuts down. Since the application doesn't shut down, we ended up one day having printing completely stop as the server had about 20 of these processes just sitting there taking up all of the ram on the box. We have a workaround in place where we forceably kill any bartend.exe processes that have been around longer than 120minutes. 

 

We're using Automation Edition 10.1 SR4. 

 

Any thoughts would be helpful. 

Thanks

Andy

 

 

9 コメント

0
Avatar
Domingo Rodriguez
モデレータ
コメントアクション Permalink

Do you own an Automation or actually an Enterprise Automation Edition of BarTender?

 

Is this a client-server based web service, where the users will open an internet browser on the client side and then running the web application based on the server side?

 

Is BarTender installed on a Windows Server 2012 server?

0
Avatar
Legacy Poster
コメントアクション Permalink

It's an Automation edition license. 

It's a C# web service that we are making calls to, to print a label via Web References on a handheld scanner device, or from a webpage.

 

It's Windows Server 2008 R2  

0
Avatar
Ian Cummings
モデレータ
コメントアクション Permalink

Modify the "web.config" file for your site in a text editor as I believe you can adjust the recycling of BarTender processes from there.  Going from memory here.

0
Avatar
Legacy Poster
コメントアクション Permalink

Modify the "web.config" file for your site in a text editor as I believe you can adjust the recycling of BarTender processes from there.  Going from memory here.

Hi Ian, 

Can you expand on what we would have to change in the web.config, and what the setting would do?

 

Thanks!

0
Avatar
Ian Cummings
モデレータ
コメントアクション Permalink

Make sure something like the below entries are there:

 

   <!-- BarTender process restart type: Valid values are Interval and OnlyOnFailure -->
    <add key="RestartType" value="Interval" />
    <!-- BarTender process restart interval is in hours. Used only if RestartType is set to Interval. -->
    <add key="RestartInterval" value="1" />
 
This will restart the persistent BarTender processes at an interval to help avoid issues.
0
Avatar
Ian Cummings
モデレータ
コメントアクション Permalink

Make sure something like the below entries are there:

 

   <!-- BarTender process restart type: Valid values are Interval and OnlyOnFailure -->
    <add key="RestartType" value="Interval" />
    <!-- BarTender process restart interval is in hours. Used only if RestartType is set to Interval. -->
    <add key="RestartInterval" value="1" />
 
This will restart the persistent BarTender processes at an interval to help avoid issues.
0
Avatar
Legacy Poster
コメントアクション Permalink

Hi Ian, 

 

I can put these settings in, but I don't think this is really the best solution as it doesn't actually fix the cause of the issue.

 

In our implementation we don't want to restart the bartender process as it should only be running long enough to actually print the label and then it closes until the next request to print a label.

0
Avatar
Domingo Rodriguez
モデレータ
コメントアクション Permalink

For web services you should really be making use of the Print Server SDK in the Enterprise Automation Edition. Making use of the Print Server SDK isn't supported in your Edition of BarTender

 

CO_E_SERVER_EXEC_FAILURE could be a sympton for a lack of non-interactive Windows Desktop Heap and with the Enterprise Automation Edition you will be able to set the amount of Desktop Heap per BarTender process you start. 

 

In IIS based web applications you would not want to close the BarTender process after each print, you would want to recycle the process after an amount of time (which is how web services work).

0
Avatar
Legacy Poster
コメントアクション Permalink

Hmm, ok.  

 

From looking at this doc(http://www.seagullscientific.com/label-software/whitepapers/controlling-barcode-label-software-using-c-sharp-and-vb.net(english).pdf) I can't justify the jump in cost of stepping up to the enterprise edition to get the Print Server SDK. From my understanding it adds a windows service that I can queue labels on and they'll get processed one at a time. Is there anything stopping me, or anything that one would have to be aware of if they were thinking of building their own print queuing service?

 

From your comment above I take it you believe that com error is possibly caused by trying to run too many copies of bartender(bartend.exe) on the machine all at the same time and this is causing the machine to run out of heap space? 

ログインしてコメントを残してください。