小编stu*_*lly的帖子

是时候重新考虑Delphi帮助文件系统了吗?

Delphi可用的大多数组件都没有Delphi 2009的HTML帮助文件.许多组件(包括一些非常流行的商业组件)只有HLP和CHM帮助文件.

许多第三方组件不再被积极开发,但被许多开发人员使用.因此,这些组件没有IDE帮助.

关于旧的CHM帮助文件的投诉很少,但今天有大量关于帮助文件系统的投诉.也许现在是Codegear重新考虑所使用的帮助文件系统类型的时候了.

关于它的一个抱怨是,即使您安装了提供HTML帮助文件的组件,"内容"选项卡也会因先前安装的组件内容被删除而损坏.

是否有可能考虑使用Codegear的替代方案?

delphi delphi-2009

9
推荐指数
1
解决办法
642
查看次数

隐藏Delphi 2009应用程序中的主窗体

下面的代码在Delphi 7中运行正常.但是,在Delphi 2009中,表单仍然隐藏,但任务栏上的按钮现在出现了.

ShowWindow(Handle, SW_HIDE);
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW );
ShowWindow(Handle, SW_SHOW);
Run Code Online (Sandbox Code Playgroud)

上面的代码在FormCreate方法中调用.

delphi vcl delphi-2009

8
推荐指数
2
解决办法
1万
查看次数

求FOSS SHA1

我正在寻找一个用于Delphi(7)的FOSS SHA1实现.

最好是一些小的,甚至是独立的SHA1,而不是一个庞大的图书馆.易于安装和使用很好,但当然可靠性是优先级1.


更新:谢谢,Rob,这段代码就像一场梦

delphi sha1

8
推荐指数
3
解决办法
1992
查看次数

如何在FireMonkey - HD Form设计器中复制,剪切和粘贴

我正在尝试编写我的第一个firemonkey - 高清应用程序

  1. 创建一个firemonkey - 高清应用程序
  2. 在表单上放一个TLabel并更改其名称.
  3. 选择TLabel

在下拉菜单中选择编辑 为什么禁用所有编辑选项?

要么

在屏幕顶部的主菜单中,选择编辑
为什么禁用所有编辑选项?

问题:我做错了什么?

delphi delphi-xe2 firemonkey

8
推荐指数
1
解决办法
1637
查看次数

登录系统(PHP)Cookie和会话

我想使用cookie/session建立一个登录系统,但我不确定它们的安全性是什么样的.

对于会话,如果"login"设置为"yes",我可以相信吗?用户是否能够改变它返回的内容?我应该只存储加密密码并在每个页面上进行检查吗?

使用cookies,我是否需要检查mysql注入等内容?

这可能听起来像初学者的东西,但如果有人能为我澄清它会真的有用.在此先感谢您的回复!

php cookies session

7
推荐指数
2
解决办法
8817
查看次数

如何在程序启动时将我的MainForm设置为隐藏?

我正在使用Borland c ++ builder.我有一个应用程序,我希望隐藏主窗体,直到在不同的窗体上按下按钮.我已将mainform上的Visible值设置为false,但在运行程序时它仍会显示.谁知道该怎么办?

vcl c++builder

7
推荐指数
1
解决办法
5320
查看次数

如何使用Open Tools API检测IDE中的文件是否正在编辑

我使用Open Tools API创建了一个访问ClearCase的小型IDE插件.它有菜单项"Check In","Check Out"等.它工作正常,但是如果我开始在IDE编辑器中输入或者我试图保存文件,我希望它自动检出一个只读文件.你认为这有可能吗?

我尝试了一些事情但最终放弃了.IOTAEditorServices.KeyboardServices具有看起来很有前景的AddKeyboardBinding方法.使用它我添加了一个带有绑定类型btPartial的通知程序(后来尝试了btComplete)并且插件开始检测一些快捷键按下但不是所有键盘事件,远非它...任何想法将非常感谢!

ide delphi opentools

6
推荐指数
2
解决办法
936
查看次数

如何在Borland VCL中获取组件的父表单?

我想确定给定组件在我的应用程序中属于哪种形式.Parent和Owner属性都不能被假定为表单本身,所以我不能简单地使用它.

我想我可以递归地通过Parent属性,直到我得到从TForm派生的东西,但是有更好的方法吗?我使用了搜索功能,但找不到任何特定于我的问题.

顺便说一句,我正在使用Borland C++ Builder(标记为Delphi,因为大多数VCL用户似乎都是用Delphi编写的,而且我读Delphi代码就好了).

提前致谢!

c++ delphi vcl c++builder

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

Delphi - 使用TApplicationEvents OnShortCut事件来检测Alt + C键按下

我正在使用TApplicationEvents OnShortCut事件来获取Delphi程序中的应用程序键盘快捷方式.

使用以下代码:

procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey; var Handled: Boolean) ;
begin
   if (Msg.CharCode = VK_F9) then
   begin
     ShowMessage('F9 pressed!') ;
     Handled := True;
   end;
end;
Run Code Online (Sandbox Code Playgroud)

题:

如何检测何时按下"ALT C"?

delphi vcl

5
推荐指数
1
解决办法
7229
查看次数

在构造函数中的神秘堆栈溢出

这是我的程序使用的类层次结构:

在此输入图像描述

TForm_Upgrade_Database的构造函数如下所示:

__fastcall TForm_Upgrade_Database :: TForm_Upgrade_Database(TComponent*Owner,int newest_version):TForm(Owner){}

在尝试创建公式的实例之后

TForm_Upgrade_Database *dlg = new TForm_Upgrade_Database(this, newest_version);
Run Code Online (Sandbox Code Playgroud)

我的程序抛出EStackOverflow异常

在此输入图像描述

我停止了程序并在TForm_Upgrade_Database构造函数中使用断点再次运行它.几步之后callstack看起来像这样:

在此输入图像描述

如何TCustomForm构造函数继续尝试调用其后代的构造函数???

最小的测试用例:

so_project.cpp:

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "f_form.h"
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
   TForm_Upgrade_Database *form = new TForm_Upgrade_Database(NULL, 10);
   delete form;
   form = NULL; 

   return 0;
}
//---------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

f_form.cpp:

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "f_form.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm_Upgrade_Database *Form1;
//---------------------------------------------------------------------------
__fastcall TForm_Upgrade_Database::TForm_Upgrade_Database(TComponent* Owner, int x)
   : TForm(Owner)
{
}
//---------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

f_form.h:

//---------------------------------------------------------------------------

#ifndef f_formH
#define …
Run Code Online (Sandbox Code Playgroud)

c++ stack-overflow constructor c++builder c++builder-6

5
推荐指数
1
解决办法
504
查看次数