问题标签 [desktop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1880 浏览

desktop - Web 与桌面开发(在线与智能客户端)

我在一家拥有大量 SAP 投资的公司工作,我们还有数十个大型 .Net 系统(主要用于内部工程系统)和 Java 平台(主要用于外部 Web 应用程序)。因此,我们在 ABAP、C# 和 Java EE 上有大型开发商店。

对于在哪个域中使用哪个平台,我们有很好的标准,但是对于何时使用 Web UI 以及何时使用桌面 UI,我们并没有很清楚。

我过去看过一些关于这个主题的优秀研究(像这样),但我想要一些更有条理的东西

我想根据最佳实践构建一个决策树来帮助解决这个问题。

我过去看到的一些标准包括:

  • 该应用程序是否针对具有不同操作系统配置的用户?
  • 应用程序是否需要 OS 类型的功能来排序和编辑数据?(我知道 AJAX / 异步 JS 为 Web 应用程序提供了更丰富的类似桌面的功能,但有些人认为桌面仍然是该领域的王者)
  • Web 应用程序能否提供桌面应用程序可以提供的可用性、响应性、清晰度和实用性?
0 投票
3 回答
9808 浏览

c# - 如何从 WPF 应用程序中检测到 Lock This Computer 命令?

更喜欢使用 WPF 的 C#、.Net 3.5 中的答案(Windows 窗体也可以)

我有一个应用程序,它本质上是一个工具栏窗口或托盘图标。它需要检测用户是否锁定了他/她的工作站并离开,以便在集中式系统中更新此人的状态。

使用 SystemEvents,我可以很容易地检测到会话切换或注销,但我终生无法弄清楚如何检测或接收 Lock 事件。

感谢您的任何帮助。

0 投票
5 回答
141 浏览

embedded - 从嵌入式到桌面的可重用知识

在嵌入式电信系统开发(C、MAKE、Symbian、100 编译器等)工作了大约 8 年后,我正在考虑通过进入桌面开发(VC++、MFC、C# 等)“稍微”改变我的道路。

然而,我担心的是,我在嵌入式系统方面的经验在进入桌面开发时可能不会给我带来太多价值。例如,我工作了这么长时间的特定领域问题和环境仍然没有给我太多谈判薪水的机会,因为它在桌面上几乎没有价值。

我认为这个地方可能对这方面有帮助。

所以,问:

如果您忽略了在编程语言级别上明显的通用经验,请举例说明您在使用嵌入式系统时学到的东西,您可以在桌面环境中重用这些东西。

PS:我应该注意我不是桌面领域的初学者——因为很多年前我所有的爱好项目都集中在桌面开发上。

0 投票
2 回答
307 浏览

windows-vista - 在 Vista 上配色方案不是 Aero 时出现重影窗口

我们有一个服务可以启动一个与登录用户交互的应用程序。我们启动的应用程序始终以我们拥有凭据的特定用户身份运行。我们执行必要的操作(获取活动会话 ID、logonUser、调整令牌)并在 winsta0\Default 桌面中使用 CreateProcessAsUser 启动应用程序。

如果 Vista PC 的配色方案是 Aero,则一切正常 - 但在基本和经典配色方案下,应用程序仍会启动,但没有绘制任何窗口。任务栏上有一个新任务。如果你最小化一个在后台全屏的窗口,那么你可以看到我们的幽灵应用程序的轮廓 - 你可以移动它,它会很好地响应键盘/鼠标输入。它只是看不见的,不是画出来的。

有谁知道会发生什么?为什么 Aero 配色方案很好,但在其他配色方案中却不行?

谢谢你的帮助,

坦率

0 投票
5 回答
6390 浏览

windows - Mac Spaces 的 Windows 实现

我刚刚听了 StackOverflow 播客的第 6 集,我只是想知道,是否有免费且足够好的 Mac Spaces for Windows 实现?

0 投票
1 回答
277 浏览

c# - 是否可以在“排列图标”菜单中添加选项?

我编写了一个基于控制台的简短 C# 应用程序,它会自动排列我的桌面图标。

是否可以在桌面“排列图标依据”菜单中添加一个条目以进行自定义排序?

0 投票
4 回答
3772 浏览

c# - 在多个显示器上绘制所有窗口

我正在使用以下代码在单个显示器上绘图:

理论上,这应该 在任一监视器上使用。但是,它只利用初级。所以,为了解决这个问题,我得到了所有显示器的 DC 并尝试这样做。

去想,这甚至根本没有绘制到屏幕上。我已经为 CreateDC 尝试了各种重载,并搜索了 SO 和其他资源,但我很难过。


一旦解决了这个问题,任何人都知道如何通过使用 SHCHangeNotify 刷新桌面来消除闪烁?我只画了两条线,它像疯了一样闪烁..)

0 投票
1 回答
672 浏览

.net - Click-Once 替代图标位置

单击一次内是否有任何功能可以推送多个快捷方式?(例如桌面,启动菜单等)过去我总是将其作为已部署应用程序的表单加载事件的一部分(安装触发应用程序启动 - 因此我可以使用表单加载来完成设置过程)。但是,我想知道这是否是最好的解决方案。

0 投票
4 回答
1150 浏览

mysql - 在桌面应用程序中使用 MySql 的各种可能性是什么

MySql 数据库可以用作桌面应用程序的后端吗?有哪些可能的方法来做到这一点?

0 投票
1 回答
4226 浏览

windows - 基于 OpenGL ES 的桌面硬件加速 OpenVG 实现

我目前正在尝试在我的桌面上启动并运行 OpenVG。问题来了:我正在/将要为 Windows CE 设备(使用 .NET 紧凑框架)开发一个应用程序,该设备具有硬件加速的 OpenGL ES 2.0 和 OpenVG 1.0.1(基于 TI OMAP35x,如果您有兴趣)。应用程序肯定会使用 OpenVG 进行绘图,如果 OpenVG 不提供某些效果(即模糊),则可能会使用 OpenGL 进行某些效果。

现在我想在没有模拟器的情况下在我的桌面上开发(见这个问题)。所以我想我只是用 P/Invoke 导入 OpenVG,这很容易,因为 OpenVG 人把他们的常量变成了真正的枚举,虽然是一个过程 C API,它很好地转换成一个面向对象的形式(带有一个 Graphics 类用于绘图和 Path、Paint、Stroke 和 Image 对象)。我还设法使用不同名称的 DLL 和入口点。哦,我导入了 EGL 1.3,也很容易转换为面向对象的 API。

直到此时,它听起来还不错。我以为我会使用 Khronos 的 OpenVG 参考实现,但速度很慢。真的很慢。你知道,就像清理表面需要一秒钟!所以我想,好吧,OpenVG 是一个标准,我将采用其他实现之一。它们中的大多数都是基于 OpenGL 的,这正是我想要的。或者不是吗?

不,这不对。使用 EGL 1.3(随用于 OpenGL ES 2.0 的 PowerVR Windows Emulation SDK 提供)创建 OpenGL ES 2.0 表面与我尝试的任何 OpenVG 实现都不兼容。其中一些需要传统的 OpenGL (AmanithVG GLE),PowerVR 提供的 EGL 版本不支持 OpenVG。大多数实现甚至没有 EGL,并使用一些奇怪的函数来初始化上下文——所有这些都假设已经创建了 OpenGL 上下文。OpenGL,而不是 OpenGL ES。叹。

我唯一可以开始工作的是 AmanithVG SRE,它对于软件实现来说非常快,并且不依赖于 OpenGL 或 EGL。它可以工作,但对于实时动画来说仍然太慢了。

我不敢相信这些事情感觉如此不对劲。我真的很想只使用 WindowsMo​​bile.DirectX.Direct3D,PowerVR 为桌面 Windows 提供了一个仿真层,希望最终的 Board Support Package 将 Direct3D 作为 OpenGL ES 包装器提供,就像它似乎在许多设备。

所以,最后的问题是:

是否有任何适用于 OpenGL ES 2.0 的 Windows 桌面系统的 OpenVG 实现?如果它与 PowerVR 的 OpenGL ES 2.0 仿真和提供的 EGL 1.3 一起顺利运行,则可以加分。

还是我应该尝试在桌面上使用传统的 OpenGL 2.0 实现?但他们通常也不提供 EGL。我不想有两个初始化层(EGL 和 WGL)。还是我应该?

注意:这不是 .NET 的问题,因为没有 .NET 的问题是一样的。