如何检测计算机激活WPF自动化对等的原因?

时间:2016-02-15 15:35:59

标签: c# .net wpf ui-automation automationpeer

我们的应用程序在某些计算机上崩溃,因为他们有一些软件激活WPF自动化同行。有没有办法知道哪个应用程序正在激活它们?

我们有一个堆栈跟踪,显示以下代码:

'use strict';

import rp from 'request-promise';
import _ from 'lodash';

var Import = {
  init: function(user, options) {
    return new Promise((resolve, reject) => {
      rp.get("...") // call to external API
        .then((res) => {
          ...
          resolve();
        });
      ...
    });
  },
  run: function() {
    return new Promise((resolve, reject) => {
      ...

      rp.get(...) // call to external API
        .then((res) => {
          var events = JSON.parse(res).data;
          var promises = [];

          for (var i = 0; i < events.length; i++) {

            promises.push(new Promise((resolve, reject) => {
              ...

              Location.findOneAndUpdateAsync(...)
                .then((loc) => {
                  events[i].location = loc._id;
                  resolve();
                })
                .catch((err) => {
                  console.error(err);
                  reject();
                });

              // I need even another call to my database here later with another promise
            }));
          }
          return Promise.all(promises)
            .then(() => {
              console.log("all promises resolved");
              resolve(events);
            });
        })
        .catch((err) => {
          console.error(err);
          reject(err);
        });
    });
  }
};

您可以在callstack中间看到自动化API触发。在大多数机器上,这不会发生,应用程序正常工作。

我们可以解决真正的问题,但鉴于这种情况发生在一小组机器上,我认为停止启用自动化子系统的应用程序会更快。

0 个答案:

没有答案