COM çalışması için sunucu üzerinde çalışan kelime?

1 Cevap php

Ben php.net sitesinde bu var. Bu aşağıda Tho kodu ile yaşıyorum sorunu ile ilgilidir. Herkes şu ne bana açıklayabilir misiniz. Ben Vista kullanıyorum. Ima Ne sunucu üzerinde Word çalışan nedir?

In order to get the Word example running, do the following on the server side. Worked for me... 1. Click START-->RUN and enter "dcomcnfg" 2. In the "Applications" tab, go down to "Microsoft Word Document" 3. Click PROPERTIES button 4. Go to the "Security" Tab 5. Click "Use custom access permissions", and then click EDIT 6. Click ADD and then click SHOW USERS 7. Highlight the IIS anonymous user account (usually IUSR_), click ADD 8. Go back to the "Security" tab by hitting OK 9. Click "Use custom launch permissions", and the click EDIT 10. Click ADD and then click SHOW USERS 11. Highlight the IIS anonymous user account (usually IUSR_), click ADD 12. Hit OK, and then hit APPLY.

Also, you should look at the "Identity" tab in the Microsoft Word Document PROPERTIES and see that it is set to "Interactive User"

ALSO, log into the machine AS the IUSR_ account, start word, and make sure to click through the dialog boxes that Word shows the first time it is run for a certain user. In other words, make sure Word opens cleanly for the IUSR_ user.

<?php
    // starting word
    $word = new COM("word.application") or die("Unable to instantiate Word");
    echo "Loaded Word, version {$word->Version}\n";

    //bring it to front
    $word->Visible = 1;

    //open an empty document
    $word->Documents->Add();

    //do some weird stuff
    $word->Selection->TypeText("This is a test...");
    $word->Documents[1]->SaveAs("Useless test.doc");


    //closing word
    $word->Quit();

    //free the object
    $word = null;
    ?>

1 Cevap

Bir kullanıcı sunucu üzerinde çalışan bir web sayfasını eriştiğinde (Vista altında bir web sunucusu çalışıyor olması garip - Bu bir geliştirme ortamı), web sunucusu yazılımı (Microsoft Internet Information Systems, veya IIS) bir süreç çalıştırarak bu isteğine yanıt (senin durumunda, PHP). Windows altında, tüm süreçler bir kullanıcı hesabı altında çalıştırmak zorunda. Microsoft Word çalıştırmak için IIS kullanıcı hesabına izin vermek için nasıl kod örneği ayrıntılı yukarıda verilen talimatlar.

Word'ü başlatmak için talimatlar sadece giderirken - gerçekten web sayfası isteklerine yanıt olarak Word'ü çalıştırmak için gidiyor kullanıcı Word'ü başlatmak olduğunu doğrulayın.

Kod, Microsoft Word, işlevsellik sağlar COM sunucusu yükler, bazı metin ekler ve belgeyi kaydeder. Web sunucusu IIS kullanıcı hesabı altında PHP yorumlayıcısı çalışıyor olacak, ve PHP, Word COM sunucusu başlar beri, IIS kullanıcı COM nesnesi başlatmak izinleri verilmesi gerekiyor, çünkü talimatlar önceden gerekli idi.

Word kullanıyorsanız güvenlik açısından fazla bir değişiklik yok - Bildiğim kadarıyla etkileri bir soru olarak, ben bu kadar uzun düzgün dezenfekte ve kullanıcı girişini doğrulamak gibi, herhangi bir güvenlik etkileri vardır sanmıyorum. Ancak, potansiyel olarak önemli bir performans darboğazı var. Word için COM sunucusu yüklemek için uzun zaman alabilir ve web sayfanıza istekleri arasında bir kırılma varsa, COM sistem sonraki isteği üzerine tamamen yeniden varlık sonuçlanan, Word, COM sunucusu boşaltın olabilir.