小编kol*_*kol的帖子

在表单编辑器中调整字体大小后调整 Delphi 表单的大小

我开发了一个遗留的 Delphi 6 应用程序,我想增加其中一个表单的字体大小。所有其他形式都有Microsoft Sans Serif 8pt,但这一形式设置为Microsoft Sans Serif 7pt。所有控件都有ParentFont = True,所以我可以简单地将表单的字体大小设置为8pt. 问题是表单及其控件不会调整大小,并且标签的文本会重叠。有没有一种简单的方法可以在调整字体大小后调整表单大小,而无需在表单编辑器中手动调整其控件大小?

forms delphi resize

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

解决来自csrss.exe的应用程序错误

我是传统Delphi应用程序的维护者.在运行此程序的计算机上,Application Error有时会出现标题引用此Delphi应用程序以及如下消息:

"......"处的指令引用"......"处的存储器.内存无法"读取".

单击"确定"以终止该程序.

任务管理器说属于此消息框的进程是csrss.exe.这将是一个系统化的方法来发现这个错误的根本原因?

问题是,这个Delphi程序相当复杂,并且错误消息相对较少出现,因此我不能简单地单步执行代码并找到导致错误的部分.此外,应用程序会自动运行,无需用户中断,因此我无法询问用户当消息出现时她做了什么.应用程序和系统日志不表示任何问题.当消息框存在时,应用程序不会停止工作.

我希望有人之前遇到过这样的错误信息,并且能够解决问题.提前谢谢你的帮助.

delphi debugging application-error csrss

3
推荐指数
2
解决办法
1095
查看次数

C# - 将指向sockaddr结构的IntPtr转换为IPAddress

从P/Invoked本机函数中,我得到一个IntPtr指向sockaddr结构的函数.我怎样才能把它转换成IPAddress

谢谢!

c# pinvoke ip-address type-conversion intptr

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

"td"中的"img"和"td"的"background-image"具有不同的高度

我有两张图片:

  • left.jpgis- 250pxby- 47px,
  • right.jpg1px-by- 47px.

这些被放入同一表格行的两个单元格中:

  • left.jpg进入<img>标签的左侧单元格,
  • right.jpg进入正确的细胞,就像它一样background-image.

这是HTML:

<table>
  <tbody>
    <tr>
      <td><img src="left.jpg" /></td>
      <td background="right.jpg" width="100%"></td>
    </tr>
  </tbody>
</table>  
Run Code Online (Sandbox Code Playgroud)

CSS:

* {
    margin: 0;
    padding: 0;
}

table {
    width: 100%;
    border-bottom: solid 1px black;
    border-collapse: collapse;
}
Run Code Online (Sandbox Code Playgroud)

我做了一个jsfiddle测试页面.渲染结果存在问题:单元格52px高而不是单元格47px,这会在左侧单元格中的图像下方创建白色条带.

在此输入图像描述

问题:如何制作单元格高度47px,消除白条?谢谢!

更新:这些都没有帮助:

tbody { height: 47px; }
tr { height: 47px; }
td { height: …
Run Code Online (Sandbox Code Playgroud)

html css image background-image

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

关闭Delphi 7应用程序的主题

我不得不在一个已有20年历史的Delphi 7应用程序中修复某些问题。修复之后,我认为我将通过修复GUI主题来改进应用程序,因此我将该XPManifest组件放在了主窗体上。尽管这使大多数控件具有更好的外观,但仍然存在一些问题。例如,在蓝色背景(blargh)上有带有黄色文本的复选框和单选按钮,主题设置的黑色文本颜色使其标签不可读。因此,我决定删除该XPManifest组件并重建程序以恢复原始外观。

有趣的是,在删除XPManifest并重新编译exe 之后,GUI主题仍然保留。我检查了DFM,但XPManifest实际上不在其中。我怎样才能解决这个问题?

delphi user-interface themes manifest delphi-7

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

Delphi包安装错误:找不到PAS文件

我正在尝试为Delphi 7安装第三方软件包.打开DPK后,我按下Install按钮,File not found出错了.如果我先按Compile,然后按下,也会发生同样的情况Install.

错误消息指contains的是DPK部分中首先列出的单元.包目录不包含PAS文件,但它包含该 contains 部分中列出的每个PAS的DCU .包目录被添加到Library path.我试图关闭Explicit rebuild,但它没有帮助.我还尝试删除对PAS文件的引用并添加DCU文件,但错误消息保持不变.

Delphi显然想重新编译包,但我没有源文件.我该怎么做才能使它使用DCU?提前谢谢你的帮助.

delphi installation package

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

C#+ NUnit:带有字节数组参数的单元测试方法

我想使用具有字节数组参数的方法为某些类编写单元测试。总共大约有100种方法,数组大小从5-10到几百个字节。我应该如何生成和存储测试阵列?

  1. 我应该手动生成它们还是通过某些生成器代码(也应该进行单元测试)生成它们?
  2. 我应该在测试期间在内存中生成它们,还是应该提前生成它们并将它们存储在某个地方?
  3. 在后一种情况下,我应该将它们存储在文件中(即使单元测试不应该涉及文件系统),还是应该将它们存储在测试代码本身中(例如,以十六进制格式的字符串存储,例如:“ 47 08 00 14等”)?

我开始手动创建它们,并将它们存储在测试代码中的十六进制字符串中。我使用这样的二进制字符串做了很多工作,因此我可以相对轻松地读取它们(“我什至看不到代码。我所看到的只是金发,黑发,红发。”)问题是,这种方法很慢,而且我认为使用自动生成器将导致更易于维护的测试。但是,我应该如何测试发电机的输出是否正确?听起来像Catch-22 ...

c# hex nunit unit-testing bytearray

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

如何在没有Visual Studio的情况下使用ASP.NET WebAPI创建RESTful Web服务?

是否可以手动使用ASP.NET WebAPI创建RESTful Web服务,我的意思是,没有Visual Studio?什么是必需的文件以及如何在服务器上安装它们?说,我想重现这个例子.

c# rest web-services visual-studio asp.net-web-api

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

带有多个嵌入式图标的EXE

我在Delphi中创建了一个VCL应用程序,并使用Project/Options对话框设置应用程序图标.我还通过向项目添加RC文件为应用程序添加了其他图标.这些都不在RC文件中命名为"MAINICON",以避免与应用程序图标资源冲突.

EXE包含所有图标:应用程序图标以及RC文件中列出的其他图标.当我启动EXE时,主窗体和任务栏按钮都将按预期显示应用程序图标.

问题是,文件管理器(资源管理器时,Total Commander等)显示为EXE额外的图标之一.为什么?是否可以在文件管理器中显示应用程序图标?

谢谢!

delphi icons embedded-resource

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

ASP.NET Core:带有 OPTIONS 异常的 Windows 身份验证(CORS 预检)

我正在开发一个单页网络应用程序。它具有ASP.NET Core 3后端和Angular 9前端。我在 Visual Studio 中的 IIS Express 上运行后端,网址为http://localhost:59280。前端在 Visual Studio Code 中运行,使用ng servehttp ://localhost:4200。之前我不需要在后端开启 CORS,因为我只在 Chrome 中测试了应用程序,添加--disable-web-security命令行参数就足以关闭同源策略。在实时服务器上不需要 CORS,上述跨域情况仅发生在我的开发机器上。

现在我想在 Firefox 中调试前端,但由于无法关闭 Firefox 的同源策略,所以我必须在后端打开 CORS。不幸的是,它不起作用,因为我使用 Windows 身份验证,并且它会停止默认未经身份验证的CORS 预检请求如果我可以在没有 Windows 身份验证的情况下处理 HTTP OPTIONS 请求,则可以解决此问题。我认为这可以通过在web.config中添加类似的内容来完成:

<system.webServer>
  <security>
    <authentication>
      <anonymousAuthentication enabled="true" />
    </authentication>
    <authorization>
      <add accessType="Allow" verbs="OPTIONS" users="*" />
    </authorization>
  </security>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

...但我收到一条错误消息:“此配置节不能在此路径上使用。当该节被锁定在父级别时,就会发生这种情况。” 显然 web.config 与launchSettings.json冲突,后者似乎在 Visual Studio 中的 IIS Express 上运行后端时控制身份验证,使用以下两行:

{
  "iisSettings": …
Run Code Online (Sandbox Code Playgroud)

same-origin-policy cors preflight asp.net-core angular

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