golangwin32 프로그래밍의 dll 구덩이
package main
import (
"github.com/lxn/win"
"strconv"
"syscall"
)
func _TEXT(_str string) *uint16 {
return syscall.StringToUTF16Ptr(_str)
}
func _toString(_n int32) string {
return strconv.Itoa(int(_n))
}
func main() {
var hwnd win.HWND
cxScreen := win.GetSystemMetrics(win.SM_CXSCREEN)
cyScreen := win.GetSystemMetrics(win.SM_CYSCREEN)
win.MessageBox(hwnd, _TEXT(" -:"+_toString(cxScreen)+" :"+_toString(cyScreen)), _TEXT(" http://blog.csdn.net/songbohr"), win.MB_OK)
}
유일하게 win이 있어요. 이 고모드에 구덩이가 있어요. pd.고중
func init() {
// Library
libpdhDll = syscall.MustLoadDLL("pdh.dll")
// Functions
pdh_AddCounterW = libpdhDll.MustFindProc("PdhAddCounterW")
pdh_AddEnglishCounterW = libpdhDll.MustFindProc("PdhAddEnglishCounterW") // XXX: only supported on versions > Vista.
pdh_CloseQuery = libpdhDll.MustFindProc("PdhCloseQuery")
pdh_CollectQueryData = libpdhDll.MustFindProc("PdhCollectQueryData")
pdh_GetFormattedCounterValue = libpdhDll.MustFindProc("PdhGetFormattedCounterValue")
pdh_GetFormattedCounterArrayW = libpdhDll.MustFindProc("PdhGetFormattedCounterArrayW")
pdh_OpenQuery = libpdhDll.MustFindProc("PdhOpenQuery")
pdh_ValidatePathW = libpdhDll.MustFindProc("PdhValidatePathW")
}
Pdh Add English CounterW 이api는vista 이상 버전에서만 지원되기 때문에 xp에서 실행하면 불러올 때 이 함수의 주소를 찾지 못해 충돌합니다. 임시 해결 방안, 폭력 주석
//pdh_AddEnglishCounterW = libpdhDll.MustFindProc("PdhAddEnglishCounterW") // XXX: only supported on versions > Vista.
더 풍부한 예:https://github.com/lxn/walk
초보적으로 go로 win gui를 쓰는 것은 재미없는 일이라고 느낀다!
후기: 방금 베이더를 찾아봤는데 전재한 것도 출처를 밝히지 않았어요...oh,shit!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.