我有一个用Delphi Seattle编写的Win32 .exe,它实现了一个函数的COM接口
如果我从程序本身调用CreateOleObject(),我会对服务器的行为方式感到困惑
实例化模型设置为ciSingleInstance
所以我希望在每次调用时创建一个新实例(假设前面的实例仍在运行)。
实际发生的是第一次调用不会创建新实例但第二次调用不会 如果第一个调用运行完成,则第二个实例再次创建一个新实例,即使该程序应该恢复到其默认状态。
我如何
a)在第一次通话时强制创建第二个实例,或者 b)将程序返回到一个真正的默认状态,以便多次运行完成不会启动第二个实例。
答案 0 :(得分:0)
_populateCurrentUser: function() {
var user_id = this.get('session.data.user_id');
var user_email = this.get('session.data.user_email');
var _this = this;
return this.store.find('user', user_id).then(function(user){
_this.get('currentUser').set('content', user);
// Below is for backward-compatibility
_this.get('session').set('currentUser', user);
_this.get('session').set('user_id', user_id);
_this.get('session').set('user_email', user_email);
user;
});
}
sessionAuthenticated: function(){
this._populateCurrentUser();
this._super();
}
beforeModel: function() {
if (this.get('session.isAuthenticated')) {
return this._populateCurrentUser();
}
}
作为REGCLS_SINGLEUSE传递给CoRegisterClassObject的内部调用,这可能会导致此类不受欢迎的行为。