doudou0720 0ad74d9f7f feat(Upload/WebDav):迁移Dlass并添加WebDav管理 (#381)
* feat(Upload/Common): 重构上传功能以添加通用设置管理

- 新增UploadSettings类用于管理上传通用设置
- 重构上传逻辑,将延迟上传功能移至UploadHelper
- 在Dlass设置窗口添加通用设置标签页
- 支持多上传提供者管理及取消操作
- 增强文件上传前的验证和错误处理

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* feat(upload): 添加WebDav文件上传支持

- 新增WebDavUploader工具类实现文件上传功能
- 添加WebDavUploadProvider作为上传提供者
- 在设置界面增加WebDav配置选项
- 添加WebDav.Client NuGet包依赖

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* feat(WebDAV): 实现WebDAV上传队列管理

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* feat(Upload): 重命名Dlass设置项为云存储以支持WebDav保存

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* feat(Dlass):迁移Dlass注册位置

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* refactor(Upload): 优化上传逻辑和界面交互

- 修改Dlass标签页检测逻辑,使用Tag属性替代Header
- 限制WebDav上传队列的批量处理大小
- 移除多处上传延迟逻辑,统一在通用设置中配置
- 更新Dlass设置界面提示文本

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* chore:修改窗口命名

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* refactor(upload): 重构上传队列为统一管理架构

重构上传队列系统,引入BaseUploadQueue基类实现通用队列管理逻辑,创建UploadQueueHelper统一管理所有上传队列。将DlassUploadQueue和WebDavUploadQueue重构为继承自BaseUploadQueue的具体实现,简化代码并提高可维护性。修改MainWindow初始化代码以使用新的统一初始化方法。

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* refactor(Upload): 重构上传队列系统,改进错误处理和资源管理

- 将上传队列改为可释放资源,实现IDisposable接口
- 移除硬编码的文件验证逻辑,改为可重写方法
- 改进API客户端,支持取消操作和更好的资源管理
- 优化队列初始化流程,增加错误处理
- 统一上传提供者的队列注册方式
- 改进日志记录和错误信息

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* Update Settings.cs

* refactor(UpLoad/Queue): 移除冗余的上传成功/失败日志记录

优化WebDav上传逻辑,增加目录创建重试机制

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

* refactor(MW_Settings): 重构全选复选框状态更新逻辑

将直接设置全选复选框状态的逻辑拆分为两步,先计算所有分类复选框状态,再更新全选复选框,提高代码可读性

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>

---------

Signed-off-by: doudou0720 <98651603+doudou0720@users.noreply.github.com>
Co-authored-by: CJK_mkp <113243675+CJKmkp@users.noreply.github.com>
2026-02-24 14:08:57 +08:00
2025-10-02 20:31:08 +08:00
2026-02-07 10:43:25 +08:00
2025-06-06 23:03:41 +08:00
2025-06-07 10:50:21 +08:00
2025-05-25 09:29:48 +08:00
2025-05-24 23:44:33 +08:00
2025-05-25 09:29:48 +08:00
2026-02-10 15:25:28 +00:00
2025-11-01 21:37:55 +08:00

InkCanvasForClass
Community Edition

最后一次基于 InkCanvas 控件的倔强...

GitHub License GitHub top language GitHub Repo stars GitHub forks All Contributors Ask DeepWiki

Discord QQ STCN

💫 软件说明

使用该版本 InkCanvasForClass,意味着您同意自行承担任何可能存在的问题与风险。建议不要在公众场合(例如公开课,录播课,线上直播课,大型会议)使用未经广泛测试和优化的 Beta 版本,对使用 Beta 版本而带来的任何问题和风险(例如:被班主任批斗,被校长处罚,崩溃而导致的场面混乱,全球海平面上升等),将由使用者自行承担CJKmkp 及其项目的所有维护者不提供任何担保。

♥️ 本项目版权归 CJKmkp 所有。CJKmkp 拥有最终解释权。

智教联盟 InkCanvasForClass Community Edition 板块: forum.smart-teach.cn/t/icc-ce ,我们会在此处发布版本更新日志,同时,您也可以在遵守论坛对应管理规则与InkCanvasForClass Community Edition 板块管理条约的情况下,在该板块内提问或发表自己的使用体验。

⚠️ 使用须知

在使用和分发本软件前,请务必了解相关开源协议。本软件基于 https://github.com/InkCanvasForClass/icc-20240610-stable 修改而来,而 icc-20240610-stable 基于 https://github.com/ChangSakura/Ink-Canvas 修改,ica 则基于 https://github.com/WXRIW/Ink-Canvas 修改,增加了包括但不限于隐藏到侧边栏等功能,更改了相关UI和软件操作逻辑。对于墨迹书写功能以及 ica 独有功能的相关问题反馈,建议优先查阅 https://github.com/WXRIW/Ink-Canvas/issues使用前建议戴上大脑使用。

💬 提示

  • 对于新功能的有效意见和合理建议,开发者会适时回复并进行开发。本软件并非商业性质软件或由营利性机构驱动,请不要催促开发者,耐心等待能让功能少些Bug,更加稳定。
  • 此软件仅用于个人使用,请勿商用。更新速度不会很快,如果有能力请通过PR贡献代码,而不是在 Issue 里无能狂怒。
  • 欢迎尝试 InkCanvas 家族的其他成员,包括 Ink Canvas PlusInk Canvas Artistry 。您的大力宣传能让更多用户发现我们的软件。
  • 强烈建议使用 Microsoft Office 365 的 PowerPoint 搭配 InkCanvasForClass 使用,效果更好!!!

📗 FAQ

在 Windows 10 以下版本系统中,部分图标显示为 “□” 怎么办?

点击下载 SegoeFonts 文件,安装压缩包中 SegMDL2.ttf 字体后重启即可解决。

点击放映后一翻页就闪退

激活 Microsoft Office

放映后画板程序不会切换到 PPT 模式

  1. PowerPoint 处在保护模式下(只读),请退出保护模式,方法如下:
    1. 打开 PowerPoint,点击左上角的“文件”选项;
    2. 在“信息”标签内,点击右侧的“启用编辑”按钮。
  2. 曾经安装过 WPS Office 办公软件,导致 COM 组件被破坏,解决方法为完全卸载 WPS Office 后重新安装 Microsoft Office Mondo 2016 即可解决。
  3. 请确保 PowerPoint 和本应用运行在同一权限下,如果 PowerPoint 以管理员身份运行而本应用以普通用户身份运行,也会出现无法切换到 PPT 模式的现象,您可以通过检查 PowerPoint 的兼容性设置或提权本应用运行来解决该问题。
  4. 如果上述方法不能解决你的问题,请参考这个链接【点击此处以跳转】

程序无法正常启动

请检查你的电脑上是否安装了 .Net Framework 4.7.2 或更高版本。若没有,请前往官网下载安装。

如果仍无法运行,请安装 Microsoft Office

✏️ 贡献指南

请注意,在贡献代码时,务必 将所有代码提交到 beta 分支,以保证beta版本总是新于main版本。

TODO LIST

  1. 预备2.0版本开发
  2. Ci联动插件

贡献者

Note

此列表通过All Contributers实现。

CJK_mkp
CJK_mkp

🚧 📖 💻 🎨
CreeperAWA
CreeperAWA

💻
2,2,3-三甲基戊烷
2,2,3-三甲基戊烷

📝 📖 🎨 ⚠️ 📹
Alan-CRL
Alan-CRL

💻 🚇 📖 💵
MKStoler1024
MKStoler1024

📖 💻 🎨
Awesome Iwb
Awesome Iwb

📖
PrefacedCorg
PrefacedCorg

💻 🎨
Jursin
Jursin

🎨
tayasui rainnya!
tayasui rainnya!

🎨
doudou0720
doudou0720

💻
PANDAJSR
PANDAJSR

💻

🤝 感谢

感谢 yuwenhui2020Ink Canvas 使用说明 做出的贡献!
感谢 CN-IroneggjiajiaxdKengwangRaspberry Kanclover-yanSTBBRDChangSakura 为本项目贡献代码!

License

GPLv3

项目引用

Alan-CRL/DesktopDrawpadBlocker
Alan-CRL/Inkeys

S
Description
InkCanvasForClass Community Open Source Project
Readme GPL-3.0 101 MiB
Languages
C# 99.9%
Inno Setup 0.1%