在Petrel插件中,我希望确定当前项目的.pet文件的位置(如果有)。我可以使用Ocean API调用来获取此信息吗?
答案 0 :(得分:3)
查看PetrelProject.GetProjectInfo(IDataSourceManager dataSourceManager)。它返回一个IProjectInfo,其中包含您正在寻找的信息。
答案 1 :(得分:1)
请注意IProjectInfo.ProjectStorageDirectory的备注:
"不要使用存储目录创建文件! Petrel删除项目保存中不属于项目的所有文件。使用OpenCompressedStream(String,FileAccess)/ OpenStream(String,FileAccess),将文件放置在项目保存期间不会被删除的位置。在项目“另存为”期间,存储目录将位于新项目位置。"
虽然没有正式记录,但streamName可以是相对路径(例如," MyyPlugin \ MyData.xml")。 Petrel将为您的文件创建一个目录(在这种情况下为%PROJECTDIR%\ Ocean \ MyyPlugin \ MyData.xml)