it:ad:k2:issues:attaching_assemblies

IT:AD:K2/Issues/Attaching Assemblies

  • Create a Workflow
  • Attach Reference
    • By Default Copy Local is selected (there is no way to unset this first.
    • This means the Referenced dll is copied to the K2 project's BIN directory.
    • Will get deployed with Process and unpacked in a temp dir:
      • \K2 blackpearl\Host Server\bin\Work\Procxxx\
        • If Copy Local is not set, the dll's will not be deployed, and they need to be copied to the K2 Server's GAC.

        Other facts to know:

  • Tmp directories are deleted every time K2 server is restarted.
  • Assemblies are looked for (in order)
    • in GAC,
    • \K2 blackpearl\Host Server\bin
    • \K2 blackpearl\Host Server\bin\Work\Procxxx\

Not copying over files.

That's because …K2 sucks.

In the IDE, you point to a Dll, it says it remembers the path, but if you look at the *.kprx file, you'll see it's lying. It's remembering the Bin path it moved it too.

<Process Type="SourceCode.Workflow.Design.DefaultProcess" Assembly="SourceCode.Workflow.Authoring, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d" Version="4">
<References>
    <AssemblyReference><Guid>d317b10063a441d6b9f31b9e1356712c</Guid><ItemName>Reference</ItemName><ItemInclude>System</ItemInclude><AssemblyName>System</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>18b1e23a6f474d789050467c7e8f92d1</Guid><ItemName>Reference</ItemName><ItemInclude>System.Drawing</ItemInclude><AssemblyName>System.Drawing</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>0741368368644fd4aa0592156bda3ad8</Guid><ItemName>Reference</ItemName><ItemInclude>System.Windows.Forms</ItemInclude><AssemblyName>System.Windows.Forms</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>8aaa84e077094a05b9cd3196e876efea</Guid><ItemName>Reference</ItemName><ItemInclude>System.Data</ItemInclude><AssemblyName>System.Data</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>7d16a0e4a0b74eabbb6280f6d3b51627</Guid><ItemName>Reference</ItemName><ItemInclude>System.Xml</ItemInclude><AssemblyName>System.Xml</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>15e4080499c640008c6cef48ddbf65d2</Guid><ItemName>Reference</ItemName><ItemInclude>System.Design</ItemInclude><AssemblyName>System.Design</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>cacf37a068414ec3b3cfee81f8126baa</Guid><ItemName>Reference</ItemName><ItemInclude>System.Web</ItemInclude><AssemblyName>System.Web</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>c01b9ec78e09459ea7e26b3841de3916</Guid><ItemName>Reference</ItemName><ItemInclude>System.Web.Services</ItemInclude><AssemblyName>System.Web.Services</AssemblyReference>
    <AssemblyReference><Guid>279bb0ca58874d6ebd859e10e94c460d</Guid><ItemName>Reference</ItemName><ItemInclude>System.Transactions</ItemInclude><AssemblyName>System.Transactions</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>67edf19fba204aa88f963c0727ee78ec</Guid><ItemName>Reference</ItemName><ItemInclude>System.Drawing.Design</ItemInclude><AssemblyName>System.Drawing.Design</AssemblyName></AssemblyReference><AssemblyReference><Guid>e618d4ee64a84cb2a611dd25bc7ea043</Guid><ItemName>Reference</ItemName><ItemInclude>SourceCode.Workflow.Common, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d</ItemInclude><CopyLocal>0</CopyLocal><AssemblyName>SourceCode.Workflow.Common, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>2fccdc0de65e4f4cb97e892f236eadca</Guid><ItemName>Reference</ItemName><ItemInclude>SourceCode.ResolverFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d</ItemInclude><CopyLocal>0</CopyLocal><AssemblyName>SourceCode.ResolverFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>bd327fd48cc8411a836ef5ac69dd2104</Guid><ItemName>Reference</ItemName><ItemInclude>KO, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d</ItemInclude><CopyLocal>0</CopyLocal><AssemblyName>KO, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d</AssemblyName><Path>..\..\..\..\..\Program Files (x86)\K2 blackpearl\bin\KO.dll</Path></AssemblyReference>
    <AssemblyReference><Guid>6790b68f8ef949a1a6f030979c3a84c7</Guid><ItemName>Reference</ItemName><ItemInclude>System.Core</ItemInclude><AssemblyName>System.Core</AssemblyName><RequiredFramework>3.5</RequiredFramework></AssemblyReference>
    <AssemblyReference><Guid>1a3bbba4ae3b4f59bb5c021689f9bf18</Guid><ItemName>Reference</ItemName><ItemInclude>System.Xml.Linq</ItemInclude><AssemblyName>System.Xml.Linq</AssemblyName><RequiredFramework>3.5</RequiredFramework></AssemblyReference>
    <AssemblyReference><Guid>05367dbef98940faa76170e13f053063</Guid><ItemName>Reference</ItemName><ItemInclude>System.ServiceModel</ItemInclude><AssemblyName>System.ServiceModel</AssemblyName></AssemblyReference>
    <AssemblyReference><Guid>6ef8717fdf00409dbe5b2072e3773f75</Guid><ItemName>Reference</ItemName><ItemInclude>XAct.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f1417dfe4ed073e</ItemInclude><AssemblyName>XAct.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f1417dfe4ed073e</AssemblyName><Path>bin\XAct.Core.dll</Path></AssemblyReference>
</References>

What's a bit interesting is the CopyLocal Attribute…which it's not listening to.

Even if attached carefully to try to leave it in the source bin, it still says /bin/ and forgets the original path:

 <AssemblyReference><Guid>62d5b4e6e85147a498de67edeb63b9ac</Guid><ItemName>Reference</ItemName><ItemInclude>XAct.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f1417dfe4ed073e</ItemInclude><CopyLocal>0</CopyLocal><AssemblyName>XAct.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f1417dfe4ed073e</AssemblyName><Path>bin\XAct.Core.dll</Path></AssemblyReference></References>
  • /home/skysigal/public_html/data/pages/it/ad/k2/issues/attaching_assemblies.txt
  • Last modified: 2023/11/04 01:47
  • by 127.0.0.1