48 lines
1.0 KiB
Go
48 lines
1.0 KiB
Go
package main
|
|
|
|
import (
|
|
"embed"
|
|
"log"
|
|
"os"
|
|
"path/filepath"
|
|
|
|
"github.com/wailsapp/wails/v2"
|
|
"github.com/wailsapp/wails/v2/pkg/options"
|
|
"github.com/wailsapp/wails/v2/pkg/options/assetserver"
|
|
|
|
"douyu_go/internal/app"
|
|
)
|
|
|
|
//go:embed all:frontend/dist
|
|
var assets embed.FS
|
|
|
|
func main() {
|
|
a := app.New()
|
|
|
|
err := wails.Run(&options.App{
|
|
Title: "斗鱼抢购系统",
|
|
Width: 1600,
|
|
Height: 960,
|
|
MinWidth: 1100,
|
|
MinHeight: 700,
|
|
AssetServer: &assetserver.Options{
|
|
Assets: assets,
|
|
},
|
|
OnStartup: a.Startup,
|
|
OnShutdown: a.Shutdown,
|
|
Bind: []interface{}{
|
|
a,
|
|
},
|
|
})
|
|
if err != nil {
|
|
log.Printf("启动失败: %v", err)
|
|
// GUI 应用无控制台,把启动错误写入崩溃日志文件,便于用户事后排查。
|
|
if dir, derr := os.UserCacheDir(); derr == nil {
|
|
path := filepath.Join(dir, "douyu-go", "startup_error.log")
|
|
_ = os.MkdirAll(filepath.Dir(path), 0o755)
|
|
_ = os.WriteFile(path, []byte("斗鱼抢购系统启动失败:\n"+err.Error()+"\n"), 0o644)
|
|
}
|
|
os.Exit(1)
|
|
}
|
|
}
|