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