(PHP 5)
com_get_active_object — COM nesnesinin çalışan bir örneği için tanıtıcı döner
com_get_active_object() işlevi COM nesnesinden yeni bir örnek yaratma ile benzer işi yapar. Aralarındaki fark eğer nesne hali hazırda çalışıyorsa işlevden bir nesne dönecektir. OLE uygulamaları, sık kullanılan uygulamaları sadece bir kez yüklemek için Çalışan Nesne Tablosu olarak bilinen yapıyı kullanır; bu işlev çalışan nesne tanıtıcısını almak için COM kütüphanesinden GetActiveObject() işlevini kullanır.
progid
Erişmek istediğiniz nesne için (örneğin
Word.Application) progid
değiştirgesi ProgID veya CLSID olmalıdır.
kodSayfasi
Tam olarak COM sınıfındaki gibi rol oynar.
İstenen nesne çalışıyorsa, betiğinizdeki herhangi bir COM nesnesi gibi döndürülecektir.
İşlevin başarısız olmasının çeşitli nedenleri vardır, en sık karşılaşılan
istenen nesnenin çalışmamasından kaynaklanır. Bu durumda, istisna hata kodu
MK_E_UNAVAILABLE
olacaktır; Hata kodunu kontrol etmek
için istisna nesnesinin getCode yöntemini
kullanabilirsiniz.
com_get_active_object() işlevini bir html sunucuda kullanmak akıllıca bir fikir değildir. Birçok COM/OLE uygulaması eşzamanlı birden fazla istemci ile çalışacak şekilde tasarlanmamıştır, hatta (özellikle) Microsoft Office bile. Bu konuda daha fazla bilgi için » Sunucu taraflı ofis özdevinimi üzerine düşünceler adresine bakınız.