C# Проблема метода Getthumbnail2 в моей надстройке PDM - PullRequest
1 голос
/ 11 апреля 2020

Я пишу надстройку для Solidworks PDM. Я использую библиотеку взаимодействия epdm. Но у меня есть некоторые проблемы с методом Getthumbnail2. Я использую таким образом:

IEdmFile5 file5 = vault.GetFileFromPath(filePath, out IEdmFolder5 folder5);
            var version = file5.CurrentVersion;
            IEdmFile15 file15 = (IEdmFile15)file5;
            var obj = file15.GetThumbnail2(version);

            Image imgPreview = PictureDispC.PictureDispConverter.Convert(obj);
            imgPreview.Save(GetTempPath() + parcaadi + ".bmp", System.Drawing.Imaging.ImageFormat.Bmp);
            imgPreview.Dispose();

Я столкнулся с этим кодом ошибки:

System.Runtime.InteropServices.COMException
  HResult=0x8004040B
  İleti=HRESULT özel durum döndürdü: 0x8004040B

В этой строке;

var obj = file15.GetThumbnail2(version);

Метод decleration: https://help.solidworks.com/2019/english/api/epdmapi/epdm.interop.epdm~epdm.interop.epdm.iedmfile15~getthumbnail2.html

Пример использования: https://help.solidworks.com/2019/english/api/epdmapi/Get_File_Thumbnail_by_Version_Example_CSharp.htm

1 Ответ

0 голосов
/ 13 апреля 2020

Единственная проблема заключается в том, что он должен войти в систему для работы.

IEdmVault5 vault5 = new EdmVault5();
var vaultName = vault5.GetVaultNameFromPath(filePath);
vault5.Login("admin", "", vaultName);
IEdmFile5 file5 = vault5.GetFileFromPath(filePath, out IEdmFolder5 folder5);
...