aboutsummaryrefslogtreecommitdiff
path: root/src/tools/Dtf/Documents/Guide/Content/buildingcas.htm
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/Dtf/Documents/Guide/Content/buildingcas.htm')
-rw-r--r--src/tools/Dtf/Documents/Guide/Content/buildingcas.htm94
1 files changed, 94 insertions, 0 deletions
diff --git a/src/tools/Dtf/Documents/Guide/Content/buildingcas.htm b/src/tools/Dtf/Documents/Guide/Content/buildingcas.htm
new file mode 100644
index 00000000..e88ad552
--- /dev/null
+++ b/src/tools/Dtf/Documents/Guide/Content/buildingcas.htm
@@ -0,0 +1,94 @@
1<html xmlns="http://www.w3.org/1999/xhtml">
2<head>
3 <title>Building Managed Custom Actions</title>
4 <link rel="stylesheet" type="text/css" href="../styles/presentation.css" />
5 <link rel="stylesheet" type="text/css" href="ms-help://Hx/HxRuntime/HxLink.css" />
6</head>
7
8<body>
9
10 <div id="control">
11 <span class="productTitle">Deployment Tools Foundation</span><br />
12 <span class="topicTitle">Building Managed Custom Actions</span><br />
13 <div id="toolbar">
14 <span id="chickenFeet">
15 <a href="using.htm">Development Guide</a> &gt;
16 <a href="managedcas.htm">Managed CAs</a> &gt;
17 <span class="nolink">Building</span>
18 </span>
19 </div>
20 </div>
21 <div id="main">
22 <div id="header">
23 </div>
24 <div class="summary">
25
26 <p>The build process for managed CA DLLs is a little complicated becuase of the
27 proxy-wrapper and dll-export requirements. Here's an overview:</p>
28 <ol>
29 <li>
30 <p>Compile your CA assembly, which references WixToolset.Dtf.WindowsInstaller.dll and
31 marks exported custom actions with a CustomActionAttribute.</p>
32 <li>
33 <p>Package the CA assembly, CustomAction.config, WixToolset.Dtf.WindowsInstaller.dll,
34 and any other dependencies using <b>MakeSfxCA.exe</b>. The filenames of CustomAction.config
35 and WixToolset.Dtf.WindowsInstaller.dll must not be changed, since
36 the custom action proxy specifically looks for those files.</p>
37 </ol>
38 <p><br>
39 </p>
40 <p><b>Compiling</b></p>
41 <pre><font face="Consolas, Courier New">
42 csc.exe
43 /target:library
44 /r:$(DTFbin)\WixToolset.Dtf.WindowsInstaller.dll
45 /out:SampleCAs.dll
46 *.cs
47 </font></pre>
48 <p><b>Wrapping</b><pre><font face="Consolas, Courier New">
49 MakeSfxCA.exe
50 $(OutDir)\SampleCAsPackage.dll
51 $(DTFbin)\SfxCA.dll
52 SampleCAs.dll
53 CustomAction.config
54 $(DTFbin)\WixToolset.Dtf.WindowsInstaller.dll
55 </font></pre>
56 </p>
57 <p>Now the resulting package, SampleCAsPackage.dll, is ready to be inserted
58 into the Binary table of the MSI.</p>
59 <p><br/>
60 </p>
61 <p>For a working example of building a managed custom action package
62 you can look at included sample ManagedCAs project.</p>
63 <p><br/>
64 </p>
65
66 <p><br/></p>
67 <p><b>See also:</b></p>
68 <ul>
69 <li><a href="writingcas.htm">Writing Managed Custom Actions</a></li>
70 <li><a href="caconfig.htm">Specifying the Runtime Version</a></li>
71 </ul>
72 <p><br/></p>
73
74 </div>
75
76 <div id="footer">
77 <p />
78 Send comments on this topic to <a id="HT_MailLink" href="mailto:wix-users%40lists.sourceforge.net?Subject=Deployment Tools Foundation Documentation">
79 wix-users@lists.sourceforge.net</a>
80
81 <script type="text/javascript">
82 var HT_mailLink = document.getElementById("HT_MailLink");
83 var HT_mailLinkText = HT_mailLink.innerHTML;
84 HT_mailLink.href += ": " + document.title;
85 HT_mailLink.innerHTML = HT_mailLinkText;
86 </script>
87
88 <p />
89
90 </div>
91 </div>
92
93</body>
94</html>