如何使用WYSIWYG界面制作HTML文件?IE一个HTML编辑器.专门用于创建格式化的电子邮件,包括图像,超链接,字体格式,项目符号,缩进等...
注[jd]:这是一个自我回答的问题,旨在成为其他人的指针.
在最近的Delphi版本中,可以使用代码完成来一次编写case语句中的所有情况,例如枚举类型.
但无论我尝试什么,我都无法让它发挥作用.我应该开始输入什么,然后使用什么热键?也许我错过了一个工具/选项设置,虽然我不怀疑,因为它是一个手动操作.
在Delphi XE2中,我正在对收到的XML文件进行xslt转换,以删除所有命名空间信息.
问题:它改变了
<?xml version="1.0" encoding="utf-8"?>
Run Code Online (Sandbox Code Playgroud)
成
<?xml version="1.0" encoding="utf-16"?>
Run Code Online (Sandbox Code Playgroud)
这是我从Exchange服务器返回的XML:
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo MajorVersion="14" MinorVersion="0" MajorBuildNumber="722" MinorBuildNumber="0" Version="Exchange2010" xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"/>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<m:ResolveNamesResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<m:ResponseMessages>
<m:ResolveNamesResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:ResolutionSet TotalItemsInView="1" IncludesLastItemInRange="true">
<t:Resolution>
<t:Mailbox>
<t:Name>developer</t:Name>
<t:EmailAddress>developer@timetellbv.nl</t:EmailAddress>
<t:RoutingType>SMTP</t:RoutingType>
<t:MailboxType>Mailbox</t:MailboxType>
</t:Mailbox>
<t:Contact>
<t:Culture>nl-NL</t:Culture>
<t:DisplayName>developer</t:DisplayName>
<t:GivenName>developer</t:GivenName>
<t:EmailAddresses>
<t:Entry Key="EmailAddress1">SMTP:developer@timetellbv.nl</t:Entry>
</t:EmailAddresses>
<t:ContactSource>ActiveDirectory</t:ContactSource>
</t:Contact>
</t:Resolution>
</m:ResolutionSet>
</m:ResolveNamesResponseMessage>
</m:ResponseMessages>
</m:ResolveNamesResponse>
</s:Body>
</s:Envelope>
Run Code Online (Sandbox Code Playgroud)
这是删除命名空间信息的函数:
Uses
MSXML2_TLB; // IXMLDOMdocument
class function TXMLHelper.RemoveNameSpaces(XMLString: String): String;
const
// An XSLT script …Run Code Online (Sandbox Code Playgroud) 当代码在断点处停止时,有没有办法导出调用堆栈?
我有很长的ID字符串,我需要抓住在另一个程序中使用(见图),从屏幕截图重新输入并不是一个选项;-)
我在XE2 IDE中点击但找不到任何东西.
(解决方法:现在我继续在断点之后逐步执行代码,直到我已经移动到足够远的堆栈,局部变量再次可用.)

我可以通过本机驱动程序成功连接到Oracle,但无法使ODBC连接正常工作.Oracle 11g客户端软件安装在我的Windows 7 64位计算机上,以及从Microsoft Windows 32位的Instant Client下载下载的32位ODBC驱动程序 .
让我首先描述成功的联系:
TNSNames.ORA 包含Oracle 10安装的数据:
# TNSNAMES.ORA Network Configuration File: C:\oracle\ora92\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
VS2003-2005-10.TimeTellBV.nl =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = VS2003-2005-10)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = Orclvs10)
)
)
Run Code Online (Sandbox Code Playgroud)
我设置了我TFDConnection的
DriverName := S_FD_OraId;
Params.Database := 'VS2003-2005-10';
Run Code Online (Sandbox Code Playgroud)
或者,我可以TNSNAMES.ORA通过直接指定绕过:
DriverName := S_FD_OraId;
Params.Database := '(DESCRIPTION=(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = VS2012-2012.timetellbv.nl)(PORT = 1521)) ) (CONNECT_DATA = …Run Code Online (Sandbox Code Playgroud) 从Delphi Tokyo 10.2.x升级到Rio 10.3.1后,编辑器中文件的选项卡现在带有关闭图标:
在Delphi Rio 10.3.1中关闭图标-鼠标悬停使其他对象可见/活动
在Delphi Tokyo 10.2.x中没有关闭图标
特别是对于较短的文件名,当我想在编辑器中切换到特定文件时,我会定期单击小x。如果文件有待处理的编辑,我可以单击“取消”以阻止它关闭,但是我经常发现自己不得不重新打开它。
有点麻烦。
可以在IDE中禁用这些关闭图标吗?
我有一个带有一些TObjectList <>的对象 - 我尝试使用帮助形式SuperObject编码为JSON的字段.
TLogs = TObjectList<TLog>;
TMyObject = class(TObject)
private
FLogs: TLogs;
end;
Run Code Online (Sandbox Code Playgroud)
在SuperObjects代码内部,有一个ToClass过程,迭代字段并将它们添加到json结果中.
在此循环中,检查TRttiFields FieldType.如果它为零,则跳过该对象.
for f in Context.GetType(Value.AsObject.ClassType).GetFields do
if f.FieldType <> nil then
begin
v := f.GetValue(value.AsObject);
result.AsObject[GetFieldName(f)] := ToJson(v, index);
end
Run Code Online (Sandbox Code Playgroud)
我的通用列表字段的FieldType为nil.为什么?
如何让SuperObject序列化我的对象列表?
我以为我开始理解Unicode了,但这比我好:
const
c1 = #1; --> SizeOf() = 2
c2 = #33; --> SizeOf() = 2
c3 = #127; --> SizeOf() = 2
c4 = #128; --> SizeOf() = 1
c5 = #160; --> SizeOf() = 1
c6 = #161; --> SizeOf() = 1
c7 = #255; --> SizeOf() = 1
Run Code Online (Sandbox Code Playgroud)
谁能解释一下?Delphi XE2,默认Windows-1252代码页
谢谢Jan
我需要保持字符串和整数之间的对应关系,然后查找字符串值并返回整数.存储符合以下要求的信息的最佳结构是什么:
按顺序,速度和内存大小很重要.
我不想重新发明轮子并编写自己的排序程序.调用Sort(CompareFunction)当然没问题.
条件:
整数不保证是连续的,也没有像0或1那样的"起始值"
数据对的数量可以在100到100000之间变化
所有数据都在开头读入,没有后续的添加/删除/修改
FWIW字符串是Outlook(MAPI?)用于标识条目的十六进制条目ID.示例:00000000FE42AA0A18C71A10E8850B651C24000003000000040000000000000018000000000000001E7FDF4152B0E944BA66DFBF2C6A6416E4F52000487F22
有很多选项(TStringList(带有对象或名称/值对),TObjectList,TDictionary,......)我最好先征求意见......
我已阅读如何更快地搜索Delphi TStringList中的名称/值对?它建议用于字符串/字符串对的TDictionary,以及在Delphi 2007中对多维数组进行排序,该数组建议使用字符串/整数的TStringlist对象,但是对整数进行排序.
我限制了我的web服务只允许这些TLS 1.x密码的密码:
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA256
TLS_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
TLS_RSA_WITH_CAMELLIA_256_CBC_SHA
TLS_RSA_WITH_IDEA_CBC_SHA
TLS_RSA_WITH_RC4_128_MD5
TLS_RSA_WITH_RC4_128_SHA
更新以回应Dave Thompson的评论:
我现在按顺序获取这个SO答案生成的密码.
因为我们目前使用的是Delphi XE2/Indy 10.5.8.0/OpenSSL 1.0.2f,所以我忽略了ECDHE密码,这些软件版本实现起来太麻烦了.
此外,我们仍然允许TLS 1.0.
在更新到Delphi Seattle 10之后,我们将禁止使用TLS 1.0并将ECDHE密码重新放入.
这留下:
TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (0xcc15)
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (0x9f)
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (0x9e)
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 (0x6b)
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 (0x67)
TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256 (0xc4)
TLS_DHE_RSA_WITH_AES_256_CBC_SHA (0x39)
TLS_DHE_RSA_WITH_AES_128_CBC_SHA (0x33)
TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA (0x88)
TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA (0x45)
Run Code Online (Sandbox Code Playgroud)
转换为OpenSSL名称(根据映射OpenSSL密码套件名称到RFC名称),这些是:
DHE-RSA-CHACHA20-POLY1305
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES256-SHA256
DHE-RSA-AES128-SHA256
- cannot find the equivalent for 0xc4 - anyone? -
DHE-RSA-AES256-SHA
DHE-RSA-AES128-SHA
DHE-RSA-CAMELLIA256-SHA
DHE-RSA-CAMELLIA128-SHA256
Run Code Online (Sandbox Code Playgroud)
服务器提供密码的顺序很重要,但我是否可以控制此顺序?CipherList是一个字符串属性,包含与'+'连接的这些名称:
TIdServerIOHandlerSSLOpenSSL.SSLOptions.CipherList := 'DHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SH:DHE-RSA-AES128-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-CAMELLIA128-SHA256'; …Run Code Online (Sandbox Code Playgroud)