我正在更新 Visual Studio 扩展以使用 Visual Studio 2022。作为代码的一部分,我有这个调用IVsProject3.OpenItemWithSpecific
:
IVsProject3 project = hierarchy as IVsProject3;
hr = project.OpenItemWithSpecific(
itemIdFindAndLock,
editorFlags,
ref editorGuid,
physicalView,
ref logicalViewGuid,
docDataExisting,
out IVsWindowFrame windowFrame);
它与以前版本的 Visual Studio 一样正常工作,为项目打开了特定的编辑器。但在 Visual Studio 2022 中,这会返回-2147024809
,在各种来源中被引用为“参数不正确”或“无效参数”。
我不确定这是什么意思,因为所有参数都具有与 Visual Studio 2019 中相同的值,除了docDataExisting
,它是使用获得的,GetIUnknownForObject
并且对于每个调试会话来说差异似乎是正常的:
IntPtr docDataExisting = Marshal.GetIUnknownForObject(this);
我也不确定如何进一步调试。