ProjectReunion/dev/AppLifecycle/EncodedLaunchExecuteCommand.h

40 строки
1.1 KiB
C++

// Copyright (c) Microsoft Corporation and Contributors.
// Licensed under the MIT License.
#pragma once
#include "ExecuteCommandBase.h"
namespace winrt::Microsoft::Windows::AppLifecycle::implementation
{
class EncodedLaunchExecuteCommand : public winrt::implements<EncodedLaunchExecuteCommand,
ExecuteCommandBase>
{
public:
IFACEMETHOD(Execute)() noexcept;
private:
static std::wstring ResolveUriTarget(std::wstring uri, std::wstring appUserModelId);
};
class __declspec(uuid("8B7A213D-BFFC-456F-B4B9-E3C5B5F1097D")) EncodedLaunchExecuteCommandFactory
: public winrt::implements<EncodedLaunchExecuteCommandFactory, IClassFactory>
{
IFACEMETHODIMP CreateInstance(IUnknown* outer, GUID const& iid, void** result) noexcept final
{
*result = nullptr;
if (outer)
{
return CLASS_E_NOAGGREGATION;
}
return make<EncodedLaunchExecuteCommand>()->QueryInterface(iid, result);
}
IFACEMETHODIMP LockServer(BOOL) noexcept final
{
return S_OK;
}
};
}