Cannot Load Seagull.bartender.print.dll Follow

0
Avatar
Legacy Poster

Good day !
I am using Bartender Enterprise v9.2 and Visual Studio 2010. The problem is when i create an instance of Engine, the error occurs.
The message is "Could not load file or assembly 'Seagull.BarTender.Print, Version=9.20.1.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format.?"
Please help me how to solve this problem.
Best regard !

34 comments

0
Avatar
Legacy Poster

You have bartered and te SDK installed o our pPC?
0
Avatar
Legacy Poster

[quote name='1tufgt' timestamp='1309664918' post='153']
You have bartered and te SDK installed o our pPC?
[/quote]

Yes, i installed Bartender and it also includes .NET SDK feature.
0
Avatar
Ian Cummings
Moderator

Below I have an article on the steps to follow for adding the .NET SDK component to a Visual Studio 2010 project. For v9.3 or older you will need to do some additional tinkering.

The following steps show how to add the BarTender .NET SDK into a Visual Studio 2010 project.

1) When VS2010 starts select "New Project" on the start page.

2) Select ".Net Framework 4" and the project's template type and name.

3) In the Solution Explorer right mouse click on the project name and select Properties.

4) On the Application tab change the Target framework to be ".NET Framework 4". The solution will reload.

5) In the "Solution Explorer" right mouse click on the Reference folder and select "Add Reference…"

6) If using BarTender version 9.4 or later, select the ".NET" tab and select the Component Name "Seagull.BarTender.Print".

If using BarTender version 9.3 or earlier, select the "Browse" tab, navigate to the folder "<Program Files>\BarTender Suite\SDK\Assemblies", and select the file Seagull.BarTender.Print.dll

7) In the Solution Explorer edit the file app.config and change the contents to be:

<?xml version="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
The notable change is that "useLegacyV2RuntimeActivationPolicy=true".

8) Add a button to your project's form and write BarTender SDK code as per documentation and samples.

9) Compile and run application.
0
Avatar
Legacy Poster

I followed your instruction, however it still does not work. When i declare the instance Engine object likes :
Engine engine = new Engine();
engine.Start()
And the message is :
The BarTender engine could not be started. Possible reasons are:

1) BarTender is not properly installed.
2) BarTender is not properly registered on the computer (e.g bartend.exe /register).
3) There are too many process instances of BarTender running. Stop a few bartend.exe instances and try again. Also see SDK Engine.Start method documentation for information about how to allow more BarTender processes to run on your computer by increasing your "non-interactive" shared desktop heap.

I have installed and activated Bartender . Would you like helping me to how to solve the problem ?
Best regard !
0
Avatar
Legacy Poster

I'm trying to remember what was the fix because I do remember going through this same issue but it's been a while since I have touched it.
0
Avatar
Ian Cummings
Moderator

Are you trying to write a 64-bit application by any chance? Try changing the target for your application to be x86 instead. It should be noted that BarTender and the .NET component are x86 only at the moment.
0
Avatar
Legacy Poster

Oh god, i am trying to write my AP by x64 :(, i think i have to change to x86 . Thank you !
0
Avatar
Legacy Poster

I'm having a similar problem. When I try to use the .NET framework version 4, I get this error: Mixed mode assembly is built against version v2.0.50727 of the runtime and cannot be loaded in the 4.0 runtime without additional configuration information.". The message box tile for the error was "FileLoadException was unhandled". I can run the exact same code in .NET framework version 3 and 2 without any problems. The error occurs on the btEngine.Start() command.

Any help would be appreciated.

Thanks!

LQ
0
Avatar
Gene Henson
Moderator

LabelQueen,

To fix that "mixed mode assembly" error you will need to follow the steps that IanC outlined above. I will re-post them here as well. This solution assumes a new project being created, so just pick up on step 3 for your project.

[list=1]

[*] When VS2010 starts select "New Project" on the start page.
[*] Select ".Net Framework 4" and the project's template type and name.
[*] In the Solution Explorer right mouse click on the project name and select Properties.
[*] On the Application tab change the Target framework to be ".NET Framework 4". The solution will reload.
[*] In the "Solution Explorer" right mouse click on the Reference folder and select "Add Reference…"
[*] If using BarTender version 9.4 or later, select the ".NET" tab and select the Component Name "Seagull.BarTender.Print".
[*] If using BarTender version 9.3 or earlier, select the "Browse" tab, navigate to the folder "<Program Files>\BarTender Suite\SDK\Assemblies", and select the file Seagull.BarTender.Print.dll
[*] In the Solution Explorer edit the file app.config and change the contents to be:
[code]
<?xml version="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
[/code]
[*]The notable change is [b]"useLegacyV2RuntimeActivationPolicy=true"[/b].
[*] Add a button to your project's form and write BarTender SDK code as per documentation and samples.
[*] Compile and run application.
[/list]
0
Avatar
Legacy Poster

I am also receiving this error. I can run the example projects with no problem, but when I create my own project, following the steps laid out in the help document/SDK guide. Could this possibly be a licensing issue? I.E. What are the specific licensing requirements for using the SDK: Do you need the automation license installed locally, or can it be hosted via a license server?
0
Avatar
Ian Cummings
Moderator

Sean, you need to have an Automation edition (or Enterprise edition if older than v9.30) of BarTender. It will also work for the Trial edition, so long as it is within the trial period. BarTender obviously needs to be installed on the computer where the application will run. The bartend.exe (the BarTender application executable) is used for the actual printing via automation.

You might want to email technical support as we would probably need to delve into the specifics of your set-up to solve your issue.

http://www.seagullscientific.com/aspx/technical-support.aspx
0
Avatar
Legacy Poster

[quote name='Lee' timestamp='1309791173' post='161']
I followed your instruction, however it still does not work. When i declare the instance Engine object likes :
Engine engine = new Engine();
engine.Start()
And the message is :
The BarTender engine could not be started. Possible reasons are:

1) BarTender is not properly installed.
2) BarTender is not properly registered on the computer (e.g bartend.exe /register).
3) There are too many process instances of BarTender running. Stop a few bartend.exe instances and try again. Also see SDK Engine.Start method documentation for information about how to allow more BarTender processes to run on your computer by increasing your "non-interactive" shared desktop heap.

I have installed and activated Bartender . Would you like helping me to how to solve the problem ?
Best regard !
[/quote]

Good day !
It's a long time that i have not visited this topic. Last time, i solved the above problem, however, when i reinstalled Windows, i have the same problem, but i cannot solve. In addition, when i tried to execute the samples, this error also occur on the message box. Would anyone tell me how to fix that problem ?
0
Avatar
Legacy Poster

[quote name='Lee' timestamp='1321580539' post='1070']
Good day !
It's a long time that i have not visited this topic. Last time, i solved the above problem, however, when i reinstalled Windows, i have the same problem, but i cannot solve. In addition, when i tried to execute the samples, this error also occur on the message box. Would anyone tell me how to fix that problem ?
[/quote]

Anybody help me ?
0
Avatar
Shotaro Ito
Moderator

Hi Lee,
If compiled .net SDK Sample - such as "Click Print" installed like
"C:\Program Files\Seagull\BarTender Suite\SDK\Print SDK Samples\LabelPrint\bin\LabelPrint.exe"
doesn't work, your BarTender might not be properly activated as Automation / Enterprise Automation edition, or Trial Period has been expired.
Please check from Product status from BarTender's Help Menu > About, and check able to connect to Seagull License Server via BarTender > Administer menu > Licensing setup > Test for Licensed Edition.
If none works, please contact to regional [url="http://www.seagullscientific.com/aspx/technical-support.aspx"]Techical Support[/url].
0
Avatar
Legacy Poster

if i"m using vs2008 and bartender 9.2 what can i do to allow it to work on windows 7.
vs2008 does not support .net 4.0
thanks in advance
0
Avatar
Shotaro Ito
Moderator

Hi slimshim, BarTender 9.2's .net SDK doesn't require .net framework 4.0, and that should work with VS2008 + .net 3.0.

Check if SDK sample coming with woking fine, and give us some more details like error code / exception etc.

0
Avatar
Legacy Poster

I have a similar problem. Having this error.

Could not load file or assembly 'Seagull.BarTender.Print'
or one of its dependencies. An attempt was made to load a program with
an incorrect format.

Using Windows 7, Bartender Enterprise Automation ver 10 with SR4 (with license). Installed SDK, Web server, everything.

Using Visual Studio Ultimate 2013. ASP.NET C#

.NET Framework 4.5 installed

 

First i created a very basic webpage, published it, it works.

Then i added the reference Seagull.Bartender.Print, published it and got the error message.

 

Any ideas to fix this?

Thanks!

0
Avatar
Domingo Rodriguez
Moderator

Is this DLL located under "C:\Windows\assembly"? Otherwise, please make sure to re-add the DLL, but this time the time from this Windows folder (the Windows GAC). 

 

Also, double check that the version of the assembly is correct and corresponds to the BarTender version? If you're unsure, just copy and paste the full version number of the assembly for me to examine.

0
Avatar
Legacy Poster

Hi,

 My issue is similar to this.

I am using Visual Studio 2013 as the IDE and targeting the .NET 2.0 framework. At this time I can not convert it to .NET 4.0.

 

Following the steps outlined in the solution. I can do everything (replacing .NET 4.0 with .NET 2.0) except for step 8.

Step 8 makes sense since I am already on the .NET 2.0 framework.

 

I can compile with no issues at this point, but as soon as I add the Seagull.Bartender.Print namespace, I get a 'The Type or namespace name 'Seagull' could not be found (are you missing a using directive or an assembly reference?)'

 

I did have a copy of VS2008 kicking around and tried the same project and it worked with no issues. So there is something up with VS2013.

 

 

Thanks,

0
Avatar
Domingo Rodriguez
Moderator

kHowe,

 

  1. Please confirm if you're compiling your project using .NET Framework 2.0
  2. Please confirm if you're compiling your project against x86 architecture.
  3. Are you adding the Reference to the assembly via the "Project > Add Reference" Menu?
  4. Double check that the version of the assembly in the Windows GAC is correct and corresponds to your BarTender version.
  5. Was your VS2008 project running on the same computer, same BT version than the VS2013 one?
0
Avatar
Legacy Poster

Ok,

 1) Target Framework is '.NET Framework 2.0'

 2) Under Build I tried Any CPU, x86 and x64. Same error each time

 3) Yes, Then I go Extensions and choose Seagull.BarTender.Print Version 10.1.3.1. The Targeting is .NET Framework 2.0

 4) BarTender when I go Help->About is 10.1 SR3. I have not installed any other version of Bartender on this machine, and I am running in Trial mode (Automation whenever I am presented with a choice)

 5) Yes.. Same computer, same version of Seagull.BarTender.Print Version 10.1.3.1

 

 

Are you able to run the sample program in VS2013 targeting the .NET Framework 2.0? I remember seeing another post in this form where it sounded like someone did.. but not sure.

 

I have even tried to create a class in VS2008 to host all the functionality to print.. tested it in VS2008 and it works.. but when I use it in VS2013 I receive the same error.. except it says my class namespace is not found instead.. 

0
Avatar
Legacy Poster

Just following up to see if there is anything else I can try, or if someone else has experienced this issue (to see if the problem is on my end ;)

 

Thanks,

0
Avatar
Domingo Rodriguez
Moderator

Why don't you target .NET Framework 3.5 instead? I've just created a project in Visual Studio 2013 by targeting this version of .NET Framework, then made sure to add the reference to the Seagull.BarTender.Print namespace, and my example started without any warning or build errors.

 

Steps I followed:

 

  1. Start a new Windows Forma Application project (I chose Visual Basic).
  2. Go to "Project > Properties". and set the target to be .NET Framework 3.5.
  3. Save, close and reopen your solution.
  4. Go to "Project > Add References". Under the "Extensions" Assemblies make sure to add the reference to "Seagull.BarTender.Print".
  5. Make sure that the "Debug" and "Release" are set to "x86" architecture (by default this architecture cannot be selected, so you first need to create it).
  6. Write your code and debug / Run. No warnings or exceptions should appear.

 

This is the code I've used:

 

 

Imports Seagull.BarTender.Print
 
Public Class Form1
 
 
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
 
        Using btEngine As New Engine()
 
            btEngine.Start()
            Dim btFormat As LabelFormatDocument = btEngine.Documents.Open("C:\Seagull\Mylabel.btw")
            btFormat.Close(SaveOptions.DoNotSaveChanges)
 
        End Using
    End Sub
End Class
0
Avatar
Legacy Poster

As embarrassing as this sounds.. I have to run .NET 2.0 because one of my machines is a Windows 2000 box. It has some legacy software (which we are working on upgrading) on it that will not port over to any other OS.

As far as I know .NET 2.0 is the latest supported version.

 

I might have to wait till we upgrade the legacy software then before I can continue with this project.

0
Avatar
Domingo Rodriguez
Moderator

Try the exact same steps, but target 2.0 instead.

 

Let's see if it works

0
Avatar
Legacy Poster

Still no go. I even tried to create a VB.NET app ;)

Can you get it to work targeting 2.0?

I can switch my 2.0 app to a 3.5 and it compiles.. switch back and it doesn't...

 

I did find out something different with the VB.NET app (and realized it was in the c# app as well but I didn't notice it before)

Here is a Warning when you compile

 

(side note.. I can not paste into these textboxes.. )

 

'The Primary reference "Seagull....." could not be resolved because it has an indirect dependency on the framework assembly "System.ServiceModel, Version-3.0.0.0, Culture=neutral, PublicKey Token=b77a5c561934e089" which could not be resolved in the currently targeted framework.....'

0
Avatar
Legacy Poster

I thought that too... but useLegacyV2RuntimeActivationPolicy was introduced to the 4.0 framework... and so can not be used on a 2.0 app.config file..

0
Avatar
Legacy Poster

Hello,

 

Is there any plan to upgrade the SDK to framework 4.5.1 and to x64 arch?

0
Avatar
Domingo Rodriguez
Moderator

kHowe,

 

BarTender v10.1 still targets .NET Framework 2.0, so this seems to be a Visual Studio 2013 bug. Possible workarounds:

 

1. Use an older version of Visual Studio. BarTender is not the problem here, VS2013 is. Try VS2008 instead. If you own a license of VS2013 you should also have "downgrade rights" to use VS2008, and it can even be installed
side-by-side with VS2013.

2. Install NET 3.0 on Windows 2000. Supposedly you can't, but it is an arbitrary restriction of the NET installer, not due to any technical reason. The assemblies from 3.0/3.5 will
actually work. See 
www. orbisvitae.com/ubbthreads/ubbthreads.php?ubb=showflat&Number=69204#.VFlE3_l4rMo 
for an installer someone made that purports to install NET 3.0 on Windows 2000.

0
Avatar
Domingo Rodriguez
Moderator

Hello ilthoss,

 

There are plans to upgrade the SDK to 4.0 and also plans to make a 64bit SDK (once BarTender is available as 64bit application).

 

We don't want to make the move to a higher SDK too soon, because otherwise there would be customers still wishing (or needing) to use .NET Framework 2.0, 3.0 and 3.5 which wouldn't able to make use of our SDKs.

Please sign in to leave a comment.