Я пытаюсь создать PoC для показа / вызова различных объектов .NET из COM-клиентов.
Библиотека .NET содержит некоторые классы и перечисления.
Я могу успешно получить доступ к классам в VBScript, но не могу получить доступ к перечислениям.
Я знаю, что Enums являются типами значений и, следовательно, «CreateObject» не будет работать в этом случае.
Но я могу получить доступ к тому же Enum в коде VBA.
Вопросы:
Как получить доступ к перечислениям в VBScript?
Почему поведение двух COM-клиентов отличается? Если объектный браузер VBA может видеть перечисление, почему VBScript не позволяет мне его создать?
.NET
[ComVisible(true)]
[GuidAttribute("ebc25cf6-9120-4283-b972-0e5520d0000E")]
public enum Currency
{
GBP = CurrencyConvertorBL.CurrencyConvertorRef.Currency.GBP,
USD = CurrencyConvertorBL.CurrencyConvertorRef.Currency.USD,
INR = CurrencyConvertorBL.CurrencyConvertorRef.Currency.INR,
AUD = CurrencyConvertorBL.CurrencyConvertorRef.Currency.AUD
}
1022 * VBA *
Private Function ConvertCurrency(fromCurrency As Currency,
toCurrency As Currency) As Double
VBScript ???
Set currencyConvertorCCY = CreateObject("CurrencyConvertorBL.Currency")
Заранее спасибо.