标签: desktop-application

NHibernate在桌面应用程序中的会话管理策略是什么?

我发现在桌面应用程序中管理会话要困难得多,因为你无法利用像HttpContext这样明确的键盘.那么如何管理会话生命周期以利用延迟加载但没有为整个应用程序打开一个会话?

.net nhibernate desktop-application

11
推荐指数
2
解决办法
4962
查看次数

自动更新的最佳实践

对于基于桌面的应用程序,执行自动更新的最佳做法是什么?目前,我们下载所有文件,然后复制并注册(如果com dll)到他们各自的目录.

我查看了Google Chrome更新方法.它似乎首先将压缩文件下载到目录中,然后解压缩所有文件.此外,他们有一个设置应用程序,似乎用于进行更新.此外,他们创建一个映射到更新版本的目录,如1.0.154.43,但它们保留旧版本的目录.

desktop-application auto-update

11
推荐指数
2
解决办法
3024
查看次数

如何在Visual C#Forms应用程序中使用Google Maps API?

我决定在Visual C#2012中设计一个桌面表单应用程序,它将在用户指定的坐标和缩放级别下载谷歌地图图像.实际上,目标是创建离线地图为jpeg.稍后我还要加入下载的图片!有人可以帮我解决这个问题吗?

注意:我不会显示任何网页.我只想根据缩放级别和坐标的规格从谷歌地图下载直接图像.

问候.

c# api google-maps desktop-application winforms

11
推荐指数
1
解决办法
6万
查看次数

使用 StringComparer 反序列化 JSON 字典

我正在尝试序列化/反序列化字典,问题是我用StringComparer.OrdinalIgnoreCase比较器创建了字典。

这是我遇到的问题的代码片段:

var dict = new Dictionary<string, Dictionary<string, string>>(StringComparer.OrdinalIgnoreCase);

dict["x"] = new Dictionary<string, string>();
dict["x"]["y"] = "something";

var serialized = JsonConvert.SerializeObject(dict);

var unSerialized = JsonConvert.DeserializeObject<Dictionary<string, Dictionary<string, string>>>(serialized);

Console.WriteLine((dict.Comparer == unSerialized.Comparer ? "Same" : "Different"));
Run Code Online (Sandbox Code Playgroud)

( .NET Fiddle - 试试看)

在控制台打印出以下内容:

Different

显然,JSON 序列化器不会序列化我在创建字典时设置的比较器,但问题是我无法在事后设置比较器,因为它Dictionary<TKey, TValue>.Comparer是只读的。

我确定它与一些自定义有关,JsonSerializerSetting但我似乎无法弄清楚如何拦截集合创建并返回具有不同比较器的字典。

c# dictionary desktop-application json.net

11
推荐指数
3
解决办法
2513
查看次数

Web应用程序是否比桌面应用程序更便携?

我经常听到人们赞扬Web应用程序(而不是桌面应用程序)的可移植性.实际上,在多个操作系统上提供桌面应用程序很困难.但是,我认为Web应用程序必须同样处理可移植性问题,仅在浏览器而不是操作系统之间.或者制作跨浏览器的Web应用程序并不困难?

portability desktop-application

10
推荐指数
3
解决办法
1748
查看次数

使用浏览器进行桌面UI

如何将浏览器用作桌面应用的UI?到目前为止我提出的方法是......

  1. 使用所有HTML/Javascript.问题:无法访问文件系统或其他任何内容.
  2. 在使用应用程序时运行本地Web服务器.问题:用户完成后如何杀死它?我的用户不够技术,无法使用Ctrl + C.
  3. 将浏览器组件嵌入常规GUI中.问题:嵌入式浏览器组件充其量只是一个小问题.对Javascript/CSS的支持永远不会像真正的浏览器那样好.
  4. ...?

理想的解决方案适用于任何技术.我知道有一些选项可以编写Firefox扩展,但我希望在后端技术和浏览器独立性方面拥有完全的自由.

browser user-interface desktop-application

10
推荐指数
2
解决办法
6682
查看次数

检测用户是否有全屏运行的应用程序

我在C#中做了一个通知程序应用程序,它位于任务栏上,当我从中获取内容时会显示一个气球,类似于Google Talk,当您收到新的电子邮件时,但是如果我在全屏运行应用程序,它会忽略做到这一点就是工作.

如何检测并确保应用程序处于全屏模式?我并不是说最大化(因为应用程序可以在屏幕上最大化但仍然不是全屏模式)但真正的全屏模式.

例如,当您运行游戏时,大多数将以全屏模式运行.

最初GetForegroundWindow()并且GetWindowRect()出现在我的脑海中,但即便如此,如果我不在全屏上,我可以让窗口比我的屏幕大,这对我没有帮助,所以我想知道是否有其他标志或方法来接近这个?

c# desktop-application fullscreen

10
推荐指数
1
解决办法
3628
查看次数

使用跳跃动作为PowerPoint编写自定义代码?

我正在尝试制作基于PowerPoint幻灯片手势.JavaScript肯定不会在这里工作,因为我希望我的幻灯片工作时,为Windows打开特定的PowerPoint文件(.ppt).

我用谷歌搜索,在Leap Motion论坛上发布了一个问题,但是徒劳无功.我主要担心的是:

  1. 我不确定在这里使用什么.是否有一些用于此目的的SDK?简单来说,如何在我们的系统上为PowerPoint文件编写一些自定义代码? Leap Motion应用程序可以使用C#,C++,Python,JavaScript,Java,Objective-C开发

  2. Leap Motion设备的代码与上面的代码集成.

如果你回答这两点中的任何一点都没关系.对不起,我无法发布任何代码,因为我对系统本身的基于PowerPoint的编程完全不熟悉.

我对任何能让我完成任务的语言(C,C#,C++,Java和Objective-C)持开放态度.有一些信息/代码的sugesstions肯定会有所帮助.

我是一名PHPJavaScript开发人员.我希望我很清楚,不会被误解.

更新:

我找到了适用于Microsoft Office 2010/2013(C#)的LEAP Motion Controller插件.

c# powerpoint desktop-application visual-studio-2010 leap-motion

10
推荐指数
2
解决办法
3872
查看次数

如何在桌面应用程序上使用WebRTC?

我想使用WebRTC技术从桌面应用程序到Chrome或Firefox进行视频流传输.

到目前为止,我只看到许多使用HTML5和Javascript的WebRTC教程,这些教程仅在Chrome或Firefox上运行.桌面应用程序或本机应用程序如何?

如果我想开发这些应用程序,我可以使用什么方式或库来实现这一点?

desktop-application native video-streaming webrtc

10
推荐指数
1
解决办法
4570
查看次数

在Python PyQt桌面应用程序中安全地验证和授权用户

我开发的应用程序规定软件应该防止未经授权的访问.为了实现这一点,我使用了基于用户和密码的身份验证,并提供了两个角色 - 标准用户和管理员.

这完全在Python中实现,使用SQLAlchemy与数据库进行交互,PyQt用于用户界面.

使用brcypt对输入的密码进行哈希处理,然后将数据库中存在的哈希值与相应的用户名(Web服务中使用的标准身份验证技术)进行比较.

身份验证成功后,调用的变量将self.authenticatedUser保存类的SQLAlchemy实例User.

这种实现的结果是任何人都可以编辑登录方法,直接查询数据库直接查找User具有用户名admin 的类型的对象,并将返回的SQLAlchemy实例分配给黑客User,self.authenticatedUser并且黑客可以访问该系统.

因为,我正在分发用python编写的这个软件,黑客(或任何类型的程序员)禁用身份验证机制只需几分钟.此外,我无法通过获取登录登录令牌在此处使用Web服务进行身份验证或授权,因为该软件将在具有空隙的环境中使用.

有没有具体的方法以更安全的方式实现这一点?

  1. 使用本地MySQLDatabase
  2. 使用安全(相对难以逆向工程可能是合适的)机制.

python security authentication desktop-application sqlalchemy

10
推荐指数
1
解决办法
563
查看次数