как избавиться от надстройки безопасности winform - PullRequest
0 голосов
/ 19 октября 2019

Окно надстройки безопасности

Привет, у меня создано несколько внешних команд, и я вставил их в свою вкладку Revit. однако, когда я добавляю winform к одной из команд, он теперь запрашивает другое всплывающее окно надстройки безопасности при запуске Revit. как вы можете видеть в GiF. Есть ли способ избавиться от этого?

вот мой код для интерфейса внешней команды:

`[Transaction (Autodesk.Revit.Attributes.TransactionMode.Manual)] открытый класс DeleteUnusedFilter: IExternalCommand {

    public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
    {
        UIDocument uidoc = commandData.Application.ActiveUIDocument;
        Document doc = uidoc.Document;

             var Form = new DeleteFilter(commandData);
            try
            {
                var fltr = new FilterData(doc).GetUnusedFilter();
                if (fltr.Count == 0)
                {
                    MessageInfo.Display("No unused View Filters in Document");
                    Form.Close();
                return Result.Cancelled;
                }

                Form.ShowDialog();
                return Autodesk.Revit.UI.Result.Succeeded;
            }
            catch (Exception ex)
            {

                message = ex.Message;
                return Autodesk.Revit.UI.Result.Failed;
            }

    }
}`

а вот для winform code:

 public partial class DeleteFilter : System.Windows.Forms.Form
{
    Document doc;
    List<Element> FiltersToDelete;
    public DeleteFilter(ExternalCommandData commandData)
    {
        InitializeComponent();
        doc = commandData.Application.ActiveUIDocument.Document;
    }



    private void DeleteFilter_Load(object sender, EventArgs e)
    {
        callonload();

    }
}

вот для UiApplication, который регистрирует плагин:

 //ribbon for delete unused filter
        string path3 = Assembly.GetExecutingAssembly().Location;
        var button3 = new PushButtonData("Button2", "Delete\n Unused Filter", path2, "RevitCode.DeleteUnusedFilter");
        var panel3 = application.CreateRibbonPanel("Angelo Tools", "Delete");

        Uri imagePath3 = new Uri(@"C:\ProgramData\Autodesk\Revit\Addins\2019\icon\DeleteFtr.png");
        BitmapImage image3 = new BitmapImage(imagePath3);
        button3.ToolTip = "Delete Unused View Filters";
        PushButton Push_button3 = panel3.AddItem(button3) as PushButton;
        Push_button3.LargeImage = image3;

        return Result.Succeeded;

заранее спасибо!

1 Ответ

0 голосов
/ 20 октября 2019

Как мы уже обсуждали на форуме Revit API в Другое всплывающее окно Security Addin после добавления winform :

Это нормально и ожидаемо.

Каждая отдельная внешняя команда и внешнее приложение проверяются индивидуально.

Следовательно, добавление новой внешней команды с ее новой формой Windows приведет к новой проверке безопасности.

Вы можете получитьИзбавьтесь от них, нажав «загрузить всегда» или подписав надстройку.

Для получения дополнительной информации, пожалуйста, обратитесь к электронной справочной документации Revit API по Цифровая подпись вашего приложения .

Вы также можете посмотреть предыдущие обсуждения этой темы в темах:

...