@@ -66,33 +66,34 @@ type taskbarList3Vtbl struct {
66
66
}
67
67
68
68
func newTaskbarList3 () (* ITaskbarList3 , error ) {
69
- const COINIT_APARTMENTTHREADED = 0x2
70
-
71
- coInit := ole32 .NewProc ("CoInitializeEx" )
72
- if hr , _ , _ := coInit .Call (0 , COINIT_APARTMENTTHREADED ); hr != 0 && hr != 0x1 {
73
- return nil , syscall .Errno (hr )
74
- }
75
-
76
- var taskbar * ITaskbarList3
77
- hr , _ , _ := coCreateInstance .Call (
78
- uintptr (unsafe .Pointer (& CLSID_TaskbarList )),
79
- 0 ,
80
- uintptr (CLSCTX_INPROC_SERVER ),
81
- uintptr (unsafe .Pointer (& IID_ITaskbarList3 )),
82
- uintptr (unsafe .Pointer (& taskbar )),
83
- )
84
-
85
- if hr != 0 {
86
- return nil , syscall .Errno (hr )
87
- }
88
-
89
- if r , _ , _ := syscall .SyscallN (taskbar .lpVtbl .HrInit , uintptr (unsafe .Pointer (taskbar ))); r != 0 {
90
- syscall .SyscallN (taskbar .lpVtbl .Release , uintptr (unsafe .Pointer (taskbar )))
91
- ole32 .NewProc ("CoUninitialize" ).Call ()
92
- return nil , syscall .Errno (r )
93
- }
94
-
95
- return taskbar , nil
69
+ const COINIT_APARTMENTTHREADED = 0x2
70
+
71
+ coInit := ole32 .NewProc ("CoInitializeEx" )
72
+ if hr , _ , _ := coInit .Call (0 , COINIT_APARTMENTTHREADED ); hr != 0 && hr != 0x1 {
73
+ return nil , syscall .Errno (hr )
74
+ }
75
+
76
+ var taskbar * ITaskbarList3
77
+ hr , _ , _ := coCreateInstance .Call (
78
+ uintptr (unsafe .Pointer (& CLSID_TaskbarList )),
79
+ 0 ,
80
+ uintptr (CLSCTX_INPROC_SERVER ),
81
+ uintptr (unsafe .Pointer (& IID_ITaskbarList3 )),
82
+ uintptr (unsafe .Pointer (& taskbar )),
83
+ )
84
+
85
+ if hr != 0 {
86
+ ole32 .NewProc ("CoUninitialize" ).Call ()
87
+ return nil , syscall .Errno (hr )
88
+ }
89
+
90
+ if r , _ , _ := syscall .SyscallN (taskbar .lpVtbl .HrInit , uintptr (unsafe .Pointer (taskbar ))); r != 0 {
91
+ syscall .SyscallN (taskbar .lpVtbl .Release , uintptr (unsafe .Pointer (taskbar )))
92
+ ole32 .NewProc ("CoUninitialize" ).Call ()
93
+ return nil , syscall .Errno (r )
94
+ }
95
+
96
+ return taskbar , nil
96
97
}
97
98
98
99
func (t * ITaskbarList3 ) SetOverlayIcon (hwnd syscall.Handle , hIcon syscall.Handle , description * uint16 ) error {
0 commit comments