Aracılığıyla paylaş


COleServerDoc::OnExecOleCmd

Framework belirtilen komutu Çalıştır veya komut için Yardım'ı görüntülemek için bu işlevini çağırır.

virtual HRESULT OnExecOleCmd( 
   const GUID* pguidCmdGroup, 
   DWORD nCmdID, 
   DWORD nCmdExecOpt, 
   VARIANTARG* pvarargIn, 
   VARIANTARG* pvarargOut 
);

Parametreler

  • pguidCmdGroup
    Komut kümesini tanımlayan bir GUID için bir işaretçi. Olabilir null varsayılan komut grubu belirtmek için.

  • nCmdID
    Yürütülecek komut. Tanımlanan grup olmalıdır pguidCmdGroup.

  • nCmdExecOut
    Şekli Nesne komutu, aşağıdakilerden birini veya birkaçını aşağıdaki değerlerden birini yürütmesini olecmdexecopt numaralandırma:

  •    OLECMDEXECOPT_DODEFAULT

  •    OLECMDEXECOPT_PROMPTUSER

  •    OLECMDEXECOPT_DONTPROMPTUSER

  •    OLECMDEXECOPT_SHOWHELP

  • pvarargIn
    İşaretçi bir VARIANTARG komutu girdi bağımsız değişkenlerini içeren. Olabilir null.

  • pvarargOut
    İşaretçi bir VARIANTARG komuttan çıktı dönüş değerleri almak için. Olabilir null.

Dönüş Değeri

İade S_OK başarılı olursa; Aksi takdirde, aşağıdaki hata kodlarından birini:

Value

Description

E_UNEXPECTED

Beklenmeyen bir hata oluştu

E_FAIL

Hata oluştu

E_NOTIMPL

mfc gösterir kendisini çevirmek ve komutu gönderme girişimi

OLECMDERR_E_UNKNOWNGROUP

pguidCmdGroupolmayan ise-null tanınan komut grubu belirtmez, ancak

OLECMDERR_E_NOTSUPPORTED

nCmdIDGruptaki geçerli bir komut olarak tanınmıyorpguidCmdGroup

OLECMDERR_DISABLED

Tanımlanan komut nCmdID devre dışı bırakılır ve çalıştırılamaz

OLECMDERR_NOHELP

Arayan tarafından tanımlanan komutla ilgili Yardım için sorular nCmdID , ancak Yardım yok

OLECMDERR_CANCELED

Kullanıcı yürütme iptal edildi

Notlar

COleCmdUIetkinleştirmek, güncelleştirmek ve diğer DocObject kullanıcı arabirim komutlarının özelliklerini ayarlamak için kullanılır. Komutları başlatılan sonra yürütebilir OnExecOleCmd.

Framework çevirmek ve ole belge komutu gönderme girişiminde bulunmadan önce işlevini çağırır. Standart ole belge komutları işlemek için bu işlevi geçersiz kılmak gerekli değildir, ancak kendi özel komutları işlemek veya parametreleri kabul eden ya da sonuçları komutları işlemek istiyorsanız, bu işlev için geçersiz kılma sağlamanız gerekir.

Komutların çoğu bağımsız değişkenleri alır veya değil değerler döndürür. Komutları çoğunluğu için arayan geçirebilirsiniz nulls pvarargIn ve pvarargOut. Giriş değerleri beklediğiniz komutlarını çağıran bildirmek başlatmak ve bir VARIANTARG değişkeni ve değişken için bir işaretçi bünyesinde pvarargIn. Tek bir değer gerektiren komutlar bağımsız değişkeni doğrudan depolanabilir VARIANTARG ve işleve geçirilen. İçinde birden fazla değişken paketlenmesi VARIANTARG desteklenen türlerden birini kullanarak (gibi IDispatch ve safearray ).

Çağıran bir komut bağımsız değişkenleri döndürürse benzer şekilde bildirmek için beklenen bir VARIANTARG, ona başlatmak VT_EMPTYve kendi adres pvarargOut. Bir komutu tek bir değer döndürürse, nesneyi doğrudan bu değer depolayabilirsiniz pvarargOut. Birden çok çıkış değerleri için uygun bir şekilde paketlenmesi gerekir VARIANTARG.

Bu işlevin temel sınıf uygulaması size yol gösterecektir ole_command_map komut hedef ve uygun bir işleyici için komut gönderme deneyin ilişkili yapıları. Temel sınıf uygulaması olmayan bağımsız değişkenleri kabul eden veya deerleri komutlarıyla çalışır. Bağımsız değişkenleri kabul eden veya dönüş değerleri komutları işlemek gerekiyorsa, bu işleve geçersiz kılmak ve gerekir çalışmak pvarargIn ve pvarargOut parametrelerini kendiniz.

Gereksinimler

Başlık: afxole.h

Ayrıca bkz.

Başvuru

COleServerDoc sınıfı

Hiyerarşi grafik

COleCmdUI sınıfı