返回 DeepSeek-Reasonix
ICoreWebView2HttpResponseHeaders.go
根目录 / desktop / third_party / go-webview2 / pkg / edge / ICoreWebView2HttpResponseHeaders.go
1 //go:build windows
2
3 package edge
4
5 import (
6 "syscall"
7 "unsafe"
8
9 "golang.org/x/sys/windows"
10 )
11
12 type _ICoreWebView2HttpResponseHeadersVtbl struct {
13 _IUnknownVtbl
14 AppendHeader ComProc
15 Contains ComProc
16 GetHeader ComProc
17 GetHeaders ComProc
18 GetIterator ComProc
19 }
20
21 type ICoreWebView2HttpResponseHeaders struct {
22 vtbl *_ICoreWebView2HttpResponseHeadersVtbl
23 }
24
25 func (i *ICoreWebView2HttpResponseHeaders) AddRef() uint32 {
26 ret, _, _ := i.vtbl.AddRef.Call(uintptr(unsafe.Pointer(i)))
27
28 return uint32(ret)
29 }
30
31 func (i *ICoreWebView2HttpResponseHeaders) Release() uint32 {
32 ret, _, _ := i.vtbl.Release.Call(uintptr(unsafe.Pointer(i)))
33
34 return uint32(ret)
35 }
36
37 func (i *ICoreWebView2HttpResponseHeaders) AppendHeader(name string, value string) error {
38 // Convert string 'name' to *uint16
39 _name, err := UTF16PtrFromString(name)
40 if err != nil {
41 return err
42 }
43 // Convert string 'value' to *uint16
44 _value, err := UTF16PtrFromString(value)
45 if err != nil {
46 return err
47 }
48
49 hr, _, _ := i.vtbl.AppendHeader.Call(
50 uintptr(unsafe.Pointer(i)),
51 uintptr(unsafe.Pointer(_name)),
52 uintptr(unsafe.Pointer(_value)),
53 )
54 if windows.Handle(hr) != windows.S_OK {
55 return syscall.Errno(hr)
56 }
57 return nil
58 }
59
59 lines GO