?? class1.cs
字號:
using System;
using System.Runtime.InteropServices;
namespace Wrox.ProCSharp.COMInterop.Server
{
[InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]
public interface IMathEvents
{
[DispId(46200)] void CalculationCompleted();
}
[InterfaceType(ComInterfaceType.InterfaceIsDual)]
public interface IWelcome
{
[DispId(60040)] string Greeting(string name);
}
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IMath
{
int Add(int val1, int val2);
int Sub(int val1, int val2);
}
[ComVisible(false)]
public delegate void CalculationCompletedDelegate();
[ClassInterface(ClassInterfaceType.None)]
[ProgId("Wrox.DotnetComponent")]
[Guid("77839717-40DD-4876-8297-35B98A8402C7")]
[ComSourceInterfaces(typeof(IMathEvents))]
public class DotnetComponent : IWelcome, IMath
{
public DotnetComponent()
{
}
public event CalculationCompletedDelegate CalculationCompleted;
#region IWelcome Members
public string Greeting(string name)
{
return "Hello " + name;
}
#endregion
#region IMath Members
public int Add(int val1, int val2)
{
int result = val1 + val2;
if (CalculationCompleted != null)
CalculationCompleted();
return result;
}
public int Sub(int val1, int val2)
{
int result = val1 - val2;
if (CalculationCompleted != null)
CalculationCompleted();
return result;
}
#endregion
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -