Create static method
Implementation
static ToastNotification Create(Pointer content) {
final hClassName = convertToHString(_className);
final pIID = calloc<GUID>()..ref.setGUID(IID_IToastNotificationFactory);
final activationFactory = calloc<COMObject>();
try {
final hr =
RoGetActivationFactory(hClassName, pIID, activationFactory.cast());
if (FAILED(hr)) {
throw WindowsException(hr);
}
final toastNotificationFactory =
IToastNotificationFactory(activationFactory);
final result =
toastNotificationFactory.CreateToastNotification(content.cast());
if (FAILED(hr)) {
throw WindowsException(hr);
}
return ToastNotification(result);
} finally {
WindowsDeleteString(hClassName);
free(pIID);
free(activationFactory);
}
}