小编Ive*_*aev的帖子

什么是编译器指令来生成详细的映​​射文件

我想知道是否有一个编译器指令,我可以在我的代码(而不是来自UI)中使用它来设置编译器/链接器应该生成详细的映​​射文件.

是否有类似的东西:

{$MAPFILE DETAILED}

我正在使用Delphi 2009.

delphi debugging

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

如何将上下文菜单附加到TChromium浏览器

我有一个来自Delphi Chromium Embedded的TChromium broser(http://code.google.com/p/delphichromiumembedded).我想附上一个上下文菜单.我怎么能做到这一点?

delphi contextmenu popupmenu delphi-xe tchromium

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

如何解释Delphi XE2中的.otares文件?

在Delphi XE2中创建了一个新文件[project-name] .otares.

维基说:

在升级前XE2项目期间生成未知资源的文件.(未知资源是未包含在构建配置中的资源,如版本信息,图标,清单或样式.)

我怎么能读出这个二进制文件的含义.究竟哪些资源尚未迁移?

用ResEdit工具打开otares文件后,我显示了我需要的信息:

在此输入图像描述

delphi version-control file-association delphi-xe2

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

使用Delphi for MacOS的OutputDebugString()

Delphi OSX单元中是否有NSLog声明.我没能在Firemonkey应用程序中找到OutputDebugString的替代品.

最终解决方案如下所示:

/// <remarks>
/// Output debug string. Output debug string can be seen in Delphi
/// View|Debug Windows|Event Log or with 3-rd party programs such as
/// dbgview.exe from SysInternals (www.sysinternals.com)
/// </remarks>
procedure ODS(const Text: string);
begin
  {$IFDEF MACOS}
  // http://stackoverflow.com/questions/12405447/outputdebugstring-with-delphi-for-macosunit unt_Debug;
  Log.d(Text);
  {$ENDIF}
  {$IFDEF LINUX}
  __write(stderr, AText, Length(AText));
  __write(stderr, EOL, Length(EOL));
  {$ENDIF}
  {$IFDEF MSWINDOWS}
  OutputDebugString(PWideChar(Text));
  {$ENDIF}
end;
Run Code Online (Sandbox Code Playgroud)

delphi nslog outputdebugstring delphi-xe2 firemonkey

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

如何让 Flutter 在 GPU-1 上运行

运行 flutter Windows 应用程序时,它默认为 GPU-0。

就我而言,GPU-0 是默认主板 Intel UHD Graphics 630 处理器。我还有一个 NVIDIA Quadro T1000 作为 GPU-1。

如何指示 Flutter 在 GPU-1 上运行?

flutter flutter-windows

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

OnLoadEnd从Chromum Embedded Framework多次调用

使用CEF浏览器我尝试挂钩OnLoadEnd事件以遍历DOM树.

由于一些奇怪的原因,我得到了两次VisitDom.

procedure TForm1.FormCreate(Sender: TObject);
begin
   FBrowser := TChromium.Create(Self);
   FBrowser.Parent := TWinControl(Self);
   FBrowser.OnLoadEnd := BrowserOnLoadEnd;
   FBrowser.Load('http://google.com');
end;

procedure VisitDom(const Document: ICefDomDocument);
begin
  ShowMessage(Document.Document.Name);
end;

procedure TForm1.BrowserOnLoadEnd(Sender: TObject;
  const Browser: ICefBrowser; const Frame: ICefFrame; HttpStatusCode: Integer;
  out Result: Boolean);
var
  Visitor: TCefFastDomVisitor;
begin
  if HttpStatusCode = 200 then
  begin
    Visitor := TCefFastDomVisitor.Create(VisitDom);
    FBrowser.Browser.MainFrame.VisitDom(Visitor);
  end;
end;
Run Code Online (Sandbox Code Playgroud)

知道为什么多次调用OnLoadEnd?

delphi chromium onload-event delphi-xe2 tchromium

4
推荐指数
1
解决办法
2742
查看次数

MySqlCommand调用函数

我正在使用MySQL连接器.

using (MySqlConnection connection = new MySqlConnection("..."))
{
    connection.Open();
    MySqlCommand command = new MySqlCommand();
    command.Connection = connection;
    command.CommandType = CommandType.StoredProcedure;
    command.CommandText = "FN_NEW";
    command.Parameters.AddWithValue("P_SESSION_ID", sessionId);
    command.Parameters.AddWithValue("P_NAME", deckName);
    object result = command.ExecuteScalar(); // returns NULL !!!!!!!!!
    return Json(result);
}
Run Code Online (Sandbox Code Playgroud)

由于某种原因,返回的valus为null.我使用正确的CommandType吗?

我如何从.NET调用MySQL函数?

最终的工作版本是:

using (MySqlConnection connection = new    MySqlConnection(GetConnectionString().ConnectionString))
    {
        connection.Open();
        MySqlCommand command = new MySqlCommand();
        command.Connection = connection;
        command.CommandType = CommandType.StoredProcedure;
        command.CommandText = "FN_NEW";
        command.Parameters.AddWithValue("P_SESSION_ID", sessionId);
        command.Parameters.AddWithValue("P_NAME", deckName);
        MySqlParameter returnParam = command.Parameters.Add("@RETURN_VALUE", MySqlDbType.Int32);
        returnParam.Direction = System.Data.ParameterDirection.ReturnValue;            
        command.ExecuteNonQuery();
        NewDeckReturnCode result = (NewDeckReturnCode)returnParam.Value; …
Run Code Online (Sandbox Code Playgroud)

.net mysql function call return-value

3
推荐指数
1
解决办法
3200
查看次数

如何在一个应用程序中同时拥有 VCL 和 FMX?

我有一个 VCL 应用程序和相当独立的 VCL 代码。我想包括 Fire Monkey 表单以支持 Mac OSX。

我计划大量使用 IFDEF 来确定应该使用 VCL 为 Windows 构建还是使用 FireMonkey 为 Mac OSX 构建。

不幸的是,如果应用程序是 VCL 平台,则无法从项目管理器添加 MacOS 平台。

有没有办法以某种方式破解这个?也许手动调整 .dpr 和 .dproj 文件?

delphi vcl compilation delphi-xe2 firemonkey

3
推荐指数
1
解决办法
4302
查看次数

是否有静态构造函数/析构函数帮助主题

我知道在D2010中他们增加了对静态构造函数和析构函数的支持.我可以在哪里找到有关它们的更多信息:语法和样本?

delphi syntax static constructor delphi-2010

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

如何在不丢失我的GUI设置并将其作为组件安装的情况下继承TcxGridDBTableView并使用它?

使用dev express可以很容易地扩展Quantum Grid Views,如中所述

http://devexpress.com/Support/Center/KB/p/A334.aspx?searchtext=viewinfo

你只需声明并覆盖你需要的方法:

TMyGridDBTableView = class(TcxGridDBTableView)
protected
  function GetViewInfoClass: TcxCustomGridViewInfoClass; override;
end;
Run Code Online (Sandbox Code Playgroud)

但是要为TMyGridDBTableView消磨你

  1. 必须使用RegisterComponent()将其安装为组件包
  2. 或者从这样的代码构建整个UI

    查看:= Grid.CreateView(TMyGridDBTableView)作为TMyGridDBTableView; View.OptionsView.ColumnAutoWidth:= True; View.OptionsView.NewItemRow:= True; View.DataController.DataSource:= DataSource1; View.DataController.CreateAllItems;

这两种方式对我都不好,因为:

  1. 由于不愿意重建,在几年前我在IDE中删除了组件的安装,在每次小的更改后重新安装它们,即使我写了很多组件,我也用代码初始化它们
  2. 我仍然安装dev express组件,并通过UI操作它们.必须切换到所有视图的纯源代码即时化将导致数千行代码.

有没有办法保留我已经使用表单设计的TMyGridDBTableView,但是在运行时使用TMyGridDBTableView重载方法增强了它们?

delphi devexpress view subclass delphi-xe

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