Piotr Caban : oleview: Added copy CLSID functionality.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Jun 23 06:43:43 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: 749e65cb37ec138adda46e933bd357d8680636e0
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=749e65cb37ec138adda46e933bd357d8680636e0
Author: Piotr Caban <piotr.caban at gmail.com>
Date: Thu Jun 22 19:59:21 2006 +0200
oleview: Added copy CLSID functionality.
---
programs/oleview/oleview.c | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/programs/oleview/oleview.c b/programs/oleview/oleview.c
index 02b2b18..3bebfe2 100644
--- a/programs/oleview/oleview.c
+++ b/programs/oleview/oleview.c
@@ -49,6 +49,27 @@ INT_PTR CALLBACK CreateInstOnProc(HWND h
return FALSE;
}
+void CopyClsid(HTREEITEM item)
+{
+ TVITEM tvi;
+
+ memset(&tvi, 0, sizeof(TVITEM));
+ tvi.hItem = item;
+ tvi.cchTextMax = MAX_LOAD_STRING;
+ SendMessage(globals.hTree, TVM_GETITEM, 0, (LPARAM)&tvi);
+
+ if(OpenClipboard(globals.hMainWnd) && EmptyClipboard() && tvi.lParam)
+ {
+ HANDLE hClipData = GlobalAlloc(GHND, sizeof(WCHAR[MAX_LOAD_STRING]));
+ LPVOID pLoc = GlobalLock(hClipData);
+
+ lstrcpyW(pLoc, ((ITEM_INFO *)tvi.lParam)->clsid);
+ GlobalUnlock(hClipData);
+ hClipData = SetClipboardData(CF_UNICODETEXT, hClipData);
+ CloseClipboard();
+ }
+}
+
void ResizeChild(void)
{
RECT client, stat, tool;
@@ -149,6 +170,10 @@ int MenuCommand(WPARAM wParam, HWND hWnd
sizeof(WCHAR[MAX_LOAD_STRING]));
ShellAbout(hWnd, wszAbout, wszAboutVer, NULL);
break;
+ case IDM_COPYCLSID:
+ hSelect = TreeView_GetSelection(globals.hTree);
+ CopyClsid(hSelect);
+ break;
case IDM_CREATEINST:
hSelect = TreeView_GetSelection(globals.hTree);
CreateInst(hSelect, NULL);
More information about the wine-cvs
mailing list