【问题标题】:Intraweb - web application - users sessionsIntraweb - Web 应用程序 - 用户会话
【发布时间】:2016-02-11 20:07:12
【问题描述】:

今天我开始编写我的第一个 Web 应用程序,但一步都过不去。 一切正常...我可以连接到服务器并打开网站。问题是当我打开浏览器并在第二台电脑上输入相同的地址时,我会得到与第一台电脑相同的数据。

详细... 应用程序有两种形式,第一种是登录,第二种是接收数据。 当我在第一台电脑上登录并显示第二个表单时,然后我打开浏览器并将服务器的地址放在第二台电脑上,我从第一台电脑登录后看到第二个表单。

在这种情况下我应该怎么做?我试图在网上找到解决方案,但我找不到:(

【问题讨论】:

  • 请提供您的代码。不看你的代码,很难猜出你做错了什么。

标签: delphi session intraweb


【解决方案1】:

如果您使用 XE3(包括)之后的任何 Delphi IDE 并使用 Delphi 附带的 IntraWeb 版本,您必须升级才能使其正常工作。它是免费的,更多信息可以在这里获得: http://atozed.com/IntraWeb/Download/FreeKeyRequest.EN.aspx|

升级后(如果是这种情况),我建议您看一下 IntraWeb 演示之一,这里是: https://iwdemos.codeplex.com/SourceControl/latest

有一个名为 Features 的演示,它向您展示了如何创建多表单应用程序。老实说,我与 IntraWeb 合作了很长时间,但我从未见过这种情况。除非您使用一些全局变量来保存您的“当前”活动表单。请记住,IntraWeb 是一个完全多线程的应用程序,不应使用全局变量,除非您有某种机制保护并发访问(但您应该摆脱它们并改用 ServerController 属性)。

【讨论】:

    【解决方案2】:

    感谢您的快速回复。 我曾与 Delphi 合作过一段时间,但我从未使用过 Intraweb,我使用过 ComPort,而 IP 适用于 I/O 设备。我有 XE7,我将 Intraweb 升级到 14.0.52。

    我找不到一个好的文件交换服务器来把我的应用程序与你分享。如果我发现了什么,我会在下面发布。

    您可以查看我的简单项目的代码和其他设置。我将 Web 应用程序放在下面的链接中,它没有 .exe 文件。 https://www.dropbox.com/s/75zurcew0zr363x/Project1.rar?dl=0

    感谢您的帮助。

    【讨论】:

    • 这应该是对 Alexandre 回答的评论。请不要将回答作为问题的答案发布:)
    • 您正在 OnShow 事件处理程序中调用 TIWForm2.SetAsMainForm。不应这样调用此方法。 SetAsMainForm() 只能在整个应用程序生命周期中调用一次。此方法告诉 IntraWeb 哪个是您的应用程序主窗体(在 Desktop Delphi 中,您在创建第一个窗体时隐式设置主窗体)。主窗体是应用程序启动时的活动窗体。如果你需要一些动态的主窗体(取决于一些外部因素),那么你必须使用关联的 ServerController 事件。你的意图是什么?
    猜你喜欢
    • 2011-11-28
    • 1970-01-01
    • 1970-01-01
    • 2012-04-23
    • 2013-05-31
    • 1970-01-01
    • 2012-03-08
    • 1970-01-01
    • 2012-04-05
    相关资源
    最近更新 更多