Skip to content

Commit 1126dd7

Browse files
committed
Merge pull request #8 from jacobsantos/master
Fixes to Scalar types. Increases Assembly version.
2 parents 0ec9811 + 692d607 commit 1126dd7

File tree

3 files changed

+124
-10
lines changed

3 files changed

+124
-10
lines changed

TestCOMServer/TestCOMServer/COMTestDispatch.cs

Lines changed: 120 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,115 @@ public interface ICOMTestTypes :
171171
ICOMTestFloat,
172172
ICOMTestDouble,
173173
ICOMTestBoolean
174-
{ }
174+
{
175+
new string StringField
176+
{
177+
get;
178+
set;
179+
}
180+
181+
new int PutString(string value);
182+
new string GetString();
183+
184+
new sbyte Int8Field
185+
{
186+
get;
187+
set;
188+
}
189+
190+
new byte UInt8Field
191+
{
192+
get;
193+
set;
194+
}
195+
196+
new int PutInt8(sbyte value);
197+
new sbyte GetInt8();
198+
199+
new int PutUInt8(byte value);
200+
new byte GetUInt8();
201+
202+
new short Int16Field
203+
{
204+
get;
205+
set;
206+
}
207+
208+
new ushort UInt16Field
209+
{
210+
get;
211+
set;
212+
}
213+
214+
new int PutInt16(short value);
215+
new short GetInt16();
216+
217+
new int PutUInt16(ushort value);
218+
new ushort GetUInt16();
219+
220+
new int Int32Field
221+
{
222+
get;
223+
set;
224+
}
225+
226+
new uint UInt32Field
227+
{
228+
get;
229+
set;
230+
}
231+
232+
new int PutInt32(int value);
233+
new int GetInt32();
234+
235+
new int PutUInt32(uint value);
236+
new uint GetUInt32();
237+
238+
new long Int64Field
239+
{
240+
get;
241+
set;
242+
}
243+
244+
new ulong UInt64Field
245+
{
246+
get;
247+
set;
248+
}
249+
250+
new int PutInt64(long value);
251+
new long GetInt64();
252+
253+
new int PutUInt64(ulong value);
254+
new ulong GetUInt64();
255+
256+
new float Float32Field
257+
{
258+
get;
259+
set;
260+
}
261+
262+
new int PutFloat32(float value);
263+
new float GetFloat32();
264+
265+
new double Float64Field
266+
{
267+
get;
268+
set;
269+
}
270+
271+
new int PutFloat64(double value);
272+
new double GetFloat64();
273+
274+
new bool BooleanField
275+
{
276+
get;
277+
set;
278+
}
279+
280+
new int PutBoolean(bool value);
281+
new bool GetBoolean();
282+
}
175283

176284
[ComVisible(true),
177285
Guid("6485B1EF-D780-4834-A4FE-1EBB51746CA3"),
@@ -189,26 +297,30 @@ public interface ICOMEchoTestObject
189297
float EchoFloat32(float value);
190298
double EchoFloat64(double value);
191299
string EchoString(string value);
300+
bool EchoBoolean(bool value);
192301
}
193302

194303
[ComVisible(true),
195304
Guid("3C24506A-AE9E-4D50-9157-EF317281F1B0"),
196-
ClassInterface(ClassInterfaceType.AutoDual),
305+
ClassInterface(ClassInterfaceType.None),
306+
ProgId("GOOLE.COMEchoTestObject"),
197307
ComSourceInterfaces(typeof(ICOMEchoTestObject))]
198308
public class COMEchoTestObject : ICOMEchoTestObject
199309
{
200-
public string EchoString(string value)
310+
public COMEchoTestObject()
201311
{
202-
return value;
203312
}
204313

314+
public String EchoString(String value)
315+
{
316+
return value;
317+
}
205318

206319
public sbyte EchoInt8(sbyte value)
207320
{
208321
return value;
209322
}
210323

211-
212324
public byte EchoUInt8(byte value)
213325
{
214326
return value;
@@ -262,7 +374,8 @@ public bool EchoBoolean(bool value)
262374

263375
[ComVisible(true),
264376
Guid("865B85C5-0334-4AC6-9EF6-AACEC8FC5E86"),
265-
ClassInterface(ClassInterfaceType.AutoDual),
377+
ClassInterface(ClassInterfaceType.None),
378+
ProgId("GOOLE.COMTestScalarClass"),
266379
ComSourceInterfaces(typeof(ICOMTestTypes))]
267380
public class COMTestScalarClass : ICOMTestTypes
268381
{
@@ -351,7 +464,7 @@ public bool BooleanField
351464
set { rawBoolean = value; }
352465
}
353466

354-
COMTestScalarClass()
467+
public COMTestScalarClass()
355468
{
356469
rawString = "";
357470
rawInt8 = 0;

TestCOMServer/TestCOMServer/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.0.0.0")]
36-
[assembly: AssemblyFileVersion("1.0.0.0")]
35+
[assembly: AssemblyVersion("1.1.0.0")]
36+
[assembly: AssemblyFileVersion("1.1.0.0")]

TestCOMServer/TestCOMServer/TestCOMServer.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<DefineConstants>DEBUG;TRACE</DefineConstants>
2121
<ErrorReport>prompt</ErrorReport>
2222
<WarningLevel>4</WarningLevel>
23-
<RegisterForComInterop>false</RegisterForComInterop>
23+
<RegisterForComInterop>true</RegisterForComInterop>
2424
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
2525
</PropertyGroup>
2626
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
@@ -42,6 +42,7 @@
4242
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
4343
<ErrorReport>prompt</ErrorReport>
4444
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
45+
<RegisterForComInterop>false</RegisterForComInterop>
4546
</PropertyGroup>
4647
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
4748
<OutputPath>bin\x64\Release\</OutputPath>

0 commit comments

Comments
 (0)