# winBrowsers **Repository Path**: yqsphp/winBrowsers ## Basic Information - **Project Name**: winBrowsers - **Description**: 一个基于C# WinForm开发的嵌入式浏览器应用程序 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://www.yqsphp.top/home - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-13 - **Last Updated**: 2026-01-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: Csharp, browser, Windows, Winforms ## README # 嵌入式浏览器应用程序 winBrowser ## 项目描述 本项目是一个基于C# WinForm开发的嵌入式浏览器应用程序,采用Chrome内核作为浏览器渲染引擎。用户只需配置目标URL,程序启动后即可自动导航到指定地址,适用于信息展示、监控面板、Web应用客户端,自助终端B/S架构等多种场景。

C# .net 许可证 平台支持

## 目录结构 ``` winBrowser/ # 源代码项目根目录 ├── winBrowser/ # 主程序 (winBrowser.exe) ├── winBrowserListen/ # 服务监听程序 ├── winBrowserServer/ # 系统服务创建程序 ├── winConfig/ # 配置程序 (winConfig.exe) ├── winLibs/ # 核心库和依赖 └── winHttpServer/ # 可选的独立HTTP服务 # 打包发布目录 winBrowser/ ├── winBrowser.exe # 主应用程序 ├── winBrowserServer.exe # 服务监听程序 ├── winConfig.exe # 配置程序 └── winLibs # 运行时依赖库 ``` ## 主要功能 ### 🌐 核心浏览器功能 - 嵌入式Chromium内核,提供现代化的网页渲染与JavaScript支持 - 支持通过配置文件或界面设置启动URL - 启动后自动加载并显示预设的网页地址 - **开发者调试**:按 `Ctrl + F12` 可打开Chromium开发者工具 ### 🖥️ 窗口与界面管理 - **贴片隐藏**:支持将窗口贴边自动隐藏(被动模式)或手动隐藏(主动模式) - **全屏与置顶**:支持一键切换全屏显示,并可设置窗口始终置顶 - **外观自定义**: - 可自定义程序窗口标题 - 可显示或隐藏窗口边框 - **安全关闭**:右上角关闭按钮需要输入密码才能关闭程序 ### ⚙️ 系统集成与部署 - **服务化安装**:通过 `winBrowserServer` 将本程序注册为Windows系统服务 - **智能监控**:通过 `winBrowserListen` 服务监听程序状态,可在程序异常关闭后自动重启 - 配置持久化,设置保存后下次启动自动生效 ## 系统环境要求 ### 最低运行环境 - **操作系统**:Windows 7 SP1 - **.NET Framework**:4.7.2 ### 推荐运行环境 - **操作系统**:Windows 10 或 Windows 11 - **.NET Framework**:4.8 或更高版本 ## 快速开始 ### 安装步骤 1. **环境准备**:确保目标计算机已安装 [.NET Framework 4.7.2 或更高版本](https://dotnet.microsoft.com/download/dotnet-framework) 2. **部署程序**:将发布包中的所有文件解压到任意目录(建议非系统盘) 3. **首次运行**:双击运行主程序 `winBrowser.exe`

### 基本配置 1. 运行 `winConfig.exe` 打开配置程序 2. 在设置中,填入您希望浏览器加载的**目标URL**(例如:`https://example.com`) 3. 设置关闭程序的密码(安全功能) 4. 根据需求调整其他选项,如窗口标题、是否隐藏边框、是否启用贴片隐藏等 5. 配置是否启用监听用来监听程序运行状态 6. 保存配置并重启主应用程序,所有设置将生效 ### 高级部署(作为系统服务) 2. 运行`winBrowserServer.exe`弹窗操作设置为Windows系统服务 3. 运行 `winConfig.exe` 设置监听参数: - **监听间隔**:设置检查程序状态的时间间隔(秒) 4. 安装完成后,可在 `services.msc` (Windows服务管理器) 中查看服务状态,默认自启动 ## 程序组件说明 ### winBrowser.exe(主程序) - 嵌入式浏览器核心功能 - 用户界面和交互 - 密码保护关闭功能 - 调试模式支持(Ctrl+F12) ### winConfig.exe(配置程序) - 系统参数配置界面 - URL地址设置 - 密码设置和管理 - 外观和功能选项配置 - 监听设置 - ... ### winBrowserServer.exe(服务创建程序) - 将主程序注册为Windows服务 - 服务管理和卸载 ### winBrowserListen.exe(监听服务) - 监控主程序运行状态 - 异常关闭时自动重启 ### winLibs/(核心库) - 程序依赖文件 - 通用工具库 - 服务通信组件 ## 功能详解 ### URL 配置与管理 - 支持 `http://` 和 `https://` 协议 - 配置可保存在本地配置文件中 ### 安全功能 - **密码保护关闭**:点击关闭按钮时弹出密码输入框,验证通过后才能关闭程序 - **服务监控**:通过监听服务确保程序持续运行 ### 贴片隐藏模式 - **主动隐藏**:在配置中设置。如果不设置可再网页中操作 ```bash try{ //向窗口发送允许自动贴边 var tiebian = Tools.setAutoTiebian(true); console.log("贴边状态:"+tiebian); }catch(e){} ``` - **被动隐藏**:窗口在失去焦点或鼠标移出一定时间后,自动滑出屏幕隐藏,鼠标移回时自动显示 ### 窗口控制 - **全屏**:可通过菜单、按钮或快捷键(如 `F11`)进入/退出全屏模式 - **置顶**:开启后,窗口将始终显示在其他所有窗口之上 - **无边框模式**:隐藏标题栏和边框,实现更沉浸的显示效果 - **调试工具**:按 `Ctrl + F12` 打开Chrome开发者工具 ### 服务监控 - **心跳检测**:监听服务定期检查主程序状态 - **自动重启**:程序异常退出后,在配置的延迟时间后自动重启 - **重启限制**:无限重启循环 ## 使用流程 ### 普通用户流程 1. 运行 `winConfig.exe` → 配置URL和基本设置 → 保存 2. 运行 `winBrowser.exe` → 正常使用浏览器功能 3. 关闭程序时需要输入预设密码 ### 需要监听流程 1. 运行 `winConfig.exe` → 完成所有配置 2. 运行 `winBrowserServer.exe` → 安装系统服务 3. 重启系统验证自启动和监控功能 ## 快捷键说明 | 快捷键 | 功能说明 | |--------|----------| | `Ctrl + F12` | 打开/关闭开发者工具 | | `Alt + F4` | 尝试关闭程序(需要密码验证) | ## 注意事项与建议 ### 安全性提醒 - 请设置强密码保护程序关闭功能 - 谨慎配置来源不明的URL,以防网络钓鱼或安全风险 - 以系统服务运行时,该程序具有较高的权限,请确保程序本身来源可信 ### 性能优化建议 - 对于需要长期显示动态内容的页面,建议在网页端进行适当的性能优化 - 如果内存占用过高,可考虑在配置中设置页面自动刷新间隔,或限制页面中的多媒体内容 - 全屏模式下通常能获得最佳的性能和显示效果 - 监控服务的检测间隔不宜设置过短,建议10-30秒 ## 常见问题排查 ### 1. 程序无法启动 - **可能原因**:缺少 .NET Framework 运行库或依赖文件 - **解决方案**: 1. 检查是否已安装 .NET Framework 4.7.2+ 2. 确保 `winLibs` 文件夹中的所有文件完整 ### 2. 网页无法加载/显示空白 - **可能原因1**:URL配置错误或网络不通 - **解决方案**:通过 `winConfig.exe` 检查URL配置 - **可能原因2**:防火墙或安全软件阻止 - **解决方案**:将本程序添加到防火墙和安全软件的信任列表 - **可能原因3**:Chrome内核初始化失败 - **解决方案**:检查 `winLibs` 文件夹权限和完整性 ### 3. 安装系统服务失败 - **可能原因**:权限不足、路径问题或依赖缺失 - **解决方案**: 1. 务必使用**管理员身份**运行 `winBrowserServer.exe` 2. 将程序安装到简单的英文路径下(例如:`D:\EmbeddedBrowser`) 3. 检查Windows事件查看器中的应用程序日志,获取具体错误信息 4. 确保 `winBrowser.exe` 和所有依赖文件在同一目录 ### 4. 监控服务不工作 - **可能原因**:监听配置错误或权限问题 - **解决方案**: 1. 检查 `winBrowserListen.exe` 的配置参数 2. 确保监听服务以管理员权限运行 3. 查看监听服务的日志输出 ### 5. 忘记关闭密码 - **解决方案**: 1. 通过任务管理器结束 `winBrowser.exe` 进程 2. 运行 `winConfig.exe` 重新设置密码 3. 如果已安装为服务,需要先停止服务再修改配置 ### 6. 调试工具无法打开 - **可能原因**:调试功能被禁用或快捷键冲突 - **解决方案**: 1. 检查配置程序中是否禁用了调试功能 2. 确认没有其他程序占用了 `Ctrl+F12` 快捷键 3. 尝试重新启动程序 ## 声明 不附带任何明示或暗示的担保。请勿用于非法交易用途。一切后果由使用者承担。