2 // IVbcHostObject.cs: Host object interface for VB.NET compiler.
5 // Marek Sieradzki (marek.sieradzki@gmail.com)
7 // (C) 2005 Marek Sieradzki
9 // Permission is hereby granted, free of charge, to any person obtaining
10 // a copy of this software and associated documentation files (the
11 // "Software"), to deal in the Software without restriction, including
12 // without limitation the rights to use, copy, modify, merge, publish,
13 // distribute, sublicense, and/or sell copies of the Software, and to
14 // permit persons to whom the Software is furnished to do so, subject to
15 // the following conditions:
17 // The above copyright notice and this permission notice shall be
18 // included in all copies or substantial portions of the Software.
20 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 using Microsoft.Build.Framework;
31 using System.Runtime.InteropServices;
33 namespace Microsoft.Build.Tasks.Hosting {
35 [InterfaceType (ComInterfaceType.InterfaceIsIUnknown)]
36 [Guid ("7D7AC3BE-253A-40e8-A3FF-357D0DA7C47A")]
38 public interface IVbcHostObject : ITaskHost {
39 void BeginInitialization ();
43 void EndInitialization ();
49 bool SetAdditionalLibPaths (string[] additionalLibPaths);
51 bool SetAddModules (string[] addModules);
53 bool SetBaseAddress (string targetType, string baseAddress);
55 bool SetCodePage (int codePage);
57 bool SetDebugType (bool emitDebugInformation, string debugType);
59 bool SetDefineConstants (string defineConstants);
61 bool SetDelaySign (bool delaySign);
63 bool SetDisabledWarnings (string disabledWarnings);
65 bool SetDocumentationFile (string documentationFile);
67 bool SetErrorReport (string errorReport);
69 bool SetFileAlignment (int fileAlignment);
71 bool SetGenerateDocumentation (bool generateDocumentation);
73 bool SetImports (ITaskItem[] importsList);
75 bool SetKeyContainer (string keyContainer);
77 bool SetKeyFile (string keyFile);
79 bool SetLinkResources (ITaskItem[] linkResources);
81 bool SetMainEntryPoint (string mainEntryPoint);
83 bool SetNoConfig (bool noConfig);
85 bool SetNoStandardLib (bool noStandardLib);
87 bool SetNoWarnings (bool noWarnings);
89 bool SetOptimize (bool optimize);
91 bool SetOptionCompare (string optionCompare);
93 bool SetOptionExplicit (bool optionExplicit);
95 bool SetOptionStrict (bool optionStrict);
97 bool SetOptionStrictType (string optionStrictType);
99 bool SetOutputAssembly (string outputAssembly);
101 bool SetPlatform (string platform);
103 bool SetReferences (ITaskItem[] references);
105 bool SetRemoveIntegerChecks (bool removeIntegerChecks);
107 bool SetResources (ITaskItem[] resources);
109 bool SetResponseFiles (ITaskItem[] responseFiles);
111 bool SetRootNamespace (string rootNamespace);
113 bool SetSdkPath (string sdkPath);
115 bool SetSources (ITaskItem[] sources);
117 bool SetTargetCompactFramework (bool targetCompactFramework);
119 bool SetTargetType (string targetType);
121 bool SetTreatWarningsAsErrors (bool treatWarningsAsErrors);
123 bool SetWarningsAsErrors (string warningsAsErrors);
125 bool SetWarningsNotAsErrors (string warningsNotAsErrors);
127 bool SetWin32Icon (string win32Icon);
129 bool SetWin32Resource (string win32Resource);