16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"ITaskbarList と IShellDispatch (宣言)"
この発言は #01194 Fermion さんのITaskbarList と IShellDispatch に対するコメントです
■説明
ITaskbarList および IShellDispatch 関連の宣言ユニットです。
以下に ShlObjEx.pas というファイル名を付け、本発言のコメント先
に記されたサンプルプロジェクトと同じフォルダ内に保存して下さい。
■注意事項
・Shell32.DLL Ver.4.71 以降が必要。( Win95 + IE4.0 以降)
・Windows98SE + Delphi5 で動作確認。
・IShellDispatchの宣言の一部が本来の宣言とは異なっていますので
ご注意下さい。(今回のサンプルに関係ない部分のために本発言が
長くならないように配慮した結果です。) m(_"_)m
■サンプルコード
//=========================================================================
unit ShlObjEx;
interface
uses Windows;
const
{* ITaskbarList *}
CLSID_TaskbarList : TGUID = (
D1:$56fdf344; D2:$fd6d; D3:$11d0;
D4:($95,$8a,$00,$60,$97,$c9,$a0,$90));
IID_ITaskbarList : TGUID = (
D1:$56fdf342; D2:$fd6d; D3:$11d0;
D4:($95,$8a,$00,$60,$97,$c9,$a0,$90));
SID_ITaskbarList = '{56FDF342-FD6D-11d0-958A-006097C9A090}';
{* IShellDispatch *}
CLSID_Shell : TGUID = (
D1:$13709620; D2:$C279; D3:$11CE;
D4:($A4,$9E,$44,$45,$53,$54,$00,$00));
IID_IShellDispatch: TGUID = (
D1:$D8F015C0; D2:$C278; D3:$11CE;
D4:($A4,$9E,$44,$45,$53,$54,$00,$00));
SID_IShellDispatch = '{D8F015C0-C278-11CE-A49E-444553540000}';
type
{* ITaskbarList *}
ITaskbarList = interface( IUnknown )
[SID_ITaskbarList]
function ActivateTab( HTabWnd: HWND ) : HRESULT; stdcall;
function AddTab( HTabWnd: HWND ) : HRESULT; stdcall;
function DeleteTab( HTabWnd: HWND ) : HRESULT; stdcall;
function HrInit( void: Pointer ) : HRESULT; stdcall;
function SetActiveAlt( HTabWnd: HWND ): HRESULT; stdcall;
end;
{* IShellDispatch *}
IShellDispatch = interface( IDispatch )
[SID_IShellDispatch]
function Get_Application: IDispatch; safecall;
function Get_Parent : IDispatch; safecall;
{*-- 本来の宣言 -----------------------------------------------------
function NameSpace( vDir: OleVariant ): Folder; safecall;
function BrowseForFolder( Hwnd: Integer; const Title:
WideString; Options: Integer;
RootFolder: OleVariant ): Folder; safecall;
//------------------------------------------------------------------*}
function NameSpace( vDir: OleVariant ): IDispatch; safecall;
function BrowseForFolder( Hwnd: Integer; const Title:
WideString; Options: Integer;
RootFolder: OleVariant ): IDispatch; safecall;
function Windows: IDispatch ; safecall;
procedure Open( vDir: OleVariant ) ; safecall;
procedure Explore( vDir: OleVariant ); safecall;
procedure MinimizeAll ; safecall;
procedure UndoMinimizeALL ; safecall;
procedure FileRun ; safecall;
procedure CascadeWindows ; safecall;
procedure TileVertically ; safecall;
procedure TileHorizontally ; safecall;
procedure ShutdownWindows ; safecall;
procedure Suspend ; safecall;
procedure EjectPC ; safecall;
procedure SetTime ; safecall;
procedure TrayProperties ; safecall;
procedure Help ; safecall;
procedure FindFiles ; safecall;
procedure FindComputer ; safecall;
procedure RefreshMenu ; safecall;
procedure ControlPanelItem( const szDir: WideString ); safecall;
property Application: IDispatch read Get_Application;
property Parent : IDispatch read Get_Parent;
end;
implementation
end.
//=========================================================================
00/11/14(Tue) 01:47am Fermion [KHF03264]
- FDELPHI MES(16):玉石混淆みんなで作るSample蔵【見本蓄積】 00/11/16 -
Original document by Fermion 氏 ID:(KHF03264)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|