|
@@ -53,32 +53,28 @@ func (c *HisApiController) Sscard() {
|
53
|
53
|
}
|
54
|
54
|
|
55
|
55
|
func GetBaseInfo() error {
|
56
|
|
- //handle := syscall.MustLoadDLL("SSCard.dll")
|
57
|
|
- //ReadCardBas := handle.MustFindProc("ReadCardBas")
|
58
|
|
- //
|
59
|
|
- //str := make([]byte, 256)
|
60
|
|
- //str1 := make([]byte, 256)
|
61
|
|
- //r, _, ferr := ReadCardBas.Call((uintptr)(unsafe.Pointer(&str[0])), IntPtr(1024), (uintptr)(unsafe.Pointer(&str1[0])), IntPtr(1024))
|
62
|
|
- //if ferr != nil {
|
63
|
|
- // fmt.Println("ReadCardBas 报错", ferr.Error())
|
64
|
|
- // return ferr
|
65
|
|
- //}
|
66
|
|
- //
|
67
|
|
- //fmt.Println(string(str))
|
68
|
|
- //
|
69
|
|
- //fmt.Println(r)
|
|
56
|
+ handle := syscall.MustLoadDLL("SSCard.dll")
|
|
57
|
+ ReadCardBas := handle.MustFindProc("ReadCardBas")
|
|
58
|
+
|
|
59
|
+ str := make([]byte, 256)
|
|
60
|
+ str1 := make([]byte, 256)
|
|
61
|
+ r, _, _ := ReadCardBas.Call((uintptr)(unsafe.Pointer(&str[0])), IntPtr(1024), (uintptr)(unsafe.Pointer(&str1[0])), IntPtr(1024))
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+ fmt.Println(string(str))
|
|
65
|
+ fmt.Println(r)
|
70
|
66
|
return nil
|
71
|
67
|
}
|
72
|
68
|
|
73
|
69
|
func CardInit() int {
|
74
|
|
- //DllTestDef := syscall.MustLoadDLL("SSCard.dll")
|
75
|
|
- //add := DllTestDef.MustFindProc("Init")
|
76
|
|
- //ret, _, err := add.Call(StrPtr("http://igb.hsa.gdgov.cn/gdyb_inf/poc/api/card/initDll"), StrPtr("440200"))
|
77
|
|
- //if err != nil {
|
78
|
|
- // fmt.Println("SSCard的运算结果为:", ret)
|
79
|
|
- //}
|
80
|
|
- //result := int(ret)
|
81
|
|
- return 0
|
|
70
|
+ DllTestDef := syscall.MustLoadDLL("SSCard.dll")
|
|
71
|
+ add := DllTestDef.MustFindProc("Init")
|
|
72
|
+ ret, _, err := add.Call(StrPtr("http://igb.hsa.gdgov.cn/gdyb_inf/poc/api/card/initDll"), StrPtr("440200"))
|
|
73
|
+ if err != nil {
|
|
74
|
+ fmt.Println("SSCard的运算结果为:", ret)
|
|
75
|
+ }
|
|
76
|
+ result := int(ret)
|
|
77
|
+ return result
|
82
|
78
|
}
|
83
|
79
|
|
84
|
80
|
func IntPtr(n int) uintptr {
|