使用ocxにコンソール-アプリケーション
-
09-06-2019 - |
質問
たいへの迅速試験、ocx.どう落としてるocxコンソール用です。いくつかのチュートリアルにCodeProjectとが不完全なものです。
解決
だがります。ここでの楽しいアプリのかを投げた。私としてはVisual C++.
保存test.cpp およびコンパイル:cl.exe /EHsc test.cpp
試験におOCXる必要がありますか#輸入のtypelibでのCLSID(やハード-コードのCLSIDをCoCreateInstanceます。に使いの輸入もを始めとする他のカスタムフ必要がある場合があります.
#include "windows.h" #include "shobjidl.h" #include "atlbase.h" // // compile with: cl /EHsc test.cpp // // A fun little program to demonstrate creating an OCX. // (CLSID_TaskbarList in this case) // BOOL CALLBACK RemoveFromTaskbarProc( HWND hwnd, LPARAM lParam ) { ITaskbarList* ptbl = (ITaskbarList*)lParam; ptbl->DeleteTab(hwnd); return TRUE; } void HideTaskWindows(ITaskbarList* ptbl) { EnumWindows( RemoveFromTaskbarProc, (LPARAM) ptbl); } // ============ BOOL CALLBACK AddToTaskbarProc( HWND hwnd, LPARAM lParam ) { ITaskbarList* ptbl = (ITaskbarList*)lParam; ptbl->AddTab(hwnd); return TRUE;// continue enumerating } void ShowTaskWindows(ITaskbarList* ptbl) { if (!EnumWindows( AddToTaskbarProc, (LPARAM) ptbl)) throw "Unable to enum windows in ShowTaskWindows"; } // ============ int main(int, char**) { CoInitialize(0); try { CComPtr<IUnknown> pUnk; if (FAILED(CoCreateInstance(CLSID_TaskbarList, NULL, CLSCTX_INPROC_SERVER|CLSCTX_LOCAL_SERVER, IID_IUnknown, (void**) &pUnk))) throw "Unabled to create CLSID_TaskbarList"; // Do something with the object... CComQIPtr<ITaskbarList> ptbl = pUnk; if (ptbl) ptbl->HrInit(); HideTaskWindows(ptbl); MessageBox( GetDesktopWindow(), _T("Check out the task bar!"), _T("StackOverflow FTW"), MB_OK); ShowTaskWindows(ptbl); } catch( TCHAR * msg ) { MessageBox( GetDesktopWindow(), msg, _T("Error"), MB_OK); } CoUninitialize(); return 0; }
他のヒント
なOCX、ActiveXユーザーコントロールのツールか?(なんこのような形で、ユーザーと交流する)?
最も簡単な方法かの試験COM/ActiveXものを使用します。(そのきっかけをつくっていきたい音ィストの負担い)
- ラエクセル新規作成ファイルがすでに存在する場合、こんこん
- プレス
Alt+F11
のVisual Basic Editorをする場合には、excel2007での"Developer'リボンタブもの
こんなに嬉しい視覚の基礎地---
- から
Tools
メニューを選択し、References
- 選択OCX/COMオブジェクトのリストから、またはクリック
Browse...
のファイルの場合は登録されていないバイオエシックスすることができる場合はこのステップを飛ばしおOCXは既に使用されています。 - から
Insert
メニューを選択し、UserForm
- の浮遊
Toolbox
画面上で右クリックし、を選択しAdditional Controls
- おOCXリストとして、チェックを入れます。
- その後ドラッグするとOCXのツールボックスから、userform
- から
Run
メニューで、バッチファイルを実行します。 試OCXと遊びます。
保存のEXCELファイルなんでこの手順を繰り返します。
@オリオン私がよかったら聴いてみてください.とは思わないのですることができてうれしいです。
も@jschroedl私は楽しかったです。
試験するactivexコンソールアプリも楽しみです。私もその価値のないようにそのパスです。きの方法や設定やプロパティを取得しますのいずれかの方法@jschroedlた説明できるのIDIspatchオブジェクトの呼び出します。
その第一歩がGetIDsByNameを呼び出し機能の呼び出しとパラメータの機能は配列の変異もを呼び出す形式のパラメータ一覧です。
すべてのが増えることで、日本でのダンディ.がロサンゼルス生まれのイベント、その下り坂である。Windowsアプリケーションが必要でメッセージポンプの火災です。づーんての空港を表示一部の空港を表示私のパスを実施するEventNotifierのイベントの皆さんのように実施するコールバックインタフェースクラシックC++です。そのイベントだけを実装インタフェース。
っていくことはできません、コンソール-アプリケーション.もって行ってたのかイベントコンソール-アプリケーション