Tag: delphi

什么是C#中的Delphi“shl”?

我正在使用Delphi(转换代码)在C#中创建一个应用程序,但是我找到了一个我不认识的命令(shl),我想知道是否有任何与C#相同的命令。 提前致谢。

Delphi到.NET + C#

我已经很多时候一直是Delphi(D7)开发人员,我一直在想.NET + C#的东西。 我的意思是关于不是“Delphi for .NET”或“Oxygene”技术/插件,而是干净的.NET / C#。 与delphi有多大不同? 还有其他一些问题…… Mono / SharpDevelop(我应该知道的其他任何人吗?)与非自由Visual Studio一样有能力吗? 在部署方面,它是如何工作的? 大会+框架+可执行文件? 框架(3.5最新?)的工作方式类似于Java世界的JVM,对吗? 它是否负责支持/利用多核技术或Windows特定优化等技术? C#与Object Pascal有一些相似之处,不应该太难以适应,对吧? 谢谢。

如何检查是否从服务器访问exe

这是客户端服务器应用程序。 我正在创建一个更新程序,它将替换exe文件列表,运行脚本以及需要更新的任何其他内容。 这将安装在服务器上。 首先,我需要检查是否通过网络共享打开了可执行文件。 我可以通过进入计算机管理然后共享文件和打开文件手动完成此操作。 这似乎是检查文件是否打开的唯一方法。 我尝试使用R / W来检查文件是否已打开,但这不起作用。 看看Win32_ServerConnection,但这只列出了打开的文件数而不是名称。 如果在Delphi中无法完成,我想用Delphi 7或C#编写代码。 我找到了一些程序可以查看服务器上的打开文件,但没有关于如何做到这一点。

从C#调用Delphi函数

我有一个下面的DLL源代码。 library Project1; uses System.SysUtils, System.Classes; type IStringFunctions = interface [‘{240B567B-E619-48E4-8CDA-F6A722F44A71}’] function GetMethodValueAsString():PAnsiChar; stdcall; end; TStringFunctions = class(TInterfacedObject, IStringFunctions) public function GetMethodValueAsString():PAnsiChar; stdcall; end; {$R *.res} function TStringFunctions.GetMethodValueAsString():PAnsiChar; stdcall; begin Result := ‘test’; end; procedure GetImplementation(out instance:IStringFunctions); stdcall; export; begin instance := TStringFunctions.Create; end; exports GetImplementation; begin end. 我想在C#中使用这样的 using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; […]

如何强制Internet Explorer打开它当前运行的实例而不是创建一个新实例?

如何以编程方式启动IE( iexplore.exe )并在当前运行的实例中导航(通过打开新选项卡或替换当前URL)而不是创建新实例。 我已经搜索了命令行开关,并尝试使用InternetExplorer.Application ,但无济于事。 这是我需要的伪 (IE6-IE9会很好): ShellExecute(Handle, ‘open’, ‘iexplore.exe’, ‘”http://google.com” -single_instance’, nil, SW_RESTORE); 这是一些代码来展示我的尝试。 Delphi中的代码(部分基于如何从HWND获取IHTMLDocument2 ): implementation uses ShellApi, ComObj, ActiveX, SHDocVw, MSHTML; function GetIEFromHWND(WHandle: HWND; var IE: IWebbrowser2): Boolean; type TObjectFromLResult = function(LRESULT: lResult; const IID: TIID; wParam: WPARAM; out pObject): HRESULT; stdcall; var hInst: HMODULE; lRes: Cardinal; Msg: UINT; pDoc: IHTMLDocument2; ObjectFromLresult: […]

如何从socket接收字节数组,到C#结构

我必须开发一个服务(C#),它通过TCP Socket从网络设备读取数据并转换它是C#结构。 我基于现有的旧Delphi应用程序,它正在做所有这些事情,我必须在C#中迁移逻辑。 编辑:我从原始数据结构的C-Source获得了一个快照: struct _RequestMsgStruct { UCHAR request_ver; //In DELPHI it is represented as Byte USHORT mac_addr[3]; /* MAC Address */ UINT product_type; //In DELPHI – Cardinal UCHAR supply_type; //In DELPHI – Byte short reserved0; //In DELPHI – SmallInt UCHAR oper_ver[4]; //In DELPHI – CARDINAL !!! USHORT brd_id; //In DELPHI – WORD unsigned short […]

寻找PDF文件解析器

有没有人知道我可以用来从明文pdf文件中提取文本部分的PDF文件解析器? 特别是我想要一种能够可靠地提取特定于注释的文本部分的方法吗? Delphi,C#RegEx我不介意。

为COM Interop构建.NET DLL时“访问注册表项被拒绝”

目标 : 使用COM interop构建一个C#DLL,由Delphi在另一个环境中调用 。 问题 :Windows阻止了我的构建,说我没有编辑注册表的权限。 语境: 我正在使用Windows 8,Visual Studio 2012,UAC已关闭。 我正在使用RGiesecke的DllExport来使用[DllExport]注释我想要导出为Dll的方法。 我在这里建议使用[ComVisible(true)] 。 我的解决方案平台目标是x86 我编辑了我的解决方案的构建属性,并检查了Build > Output > Register for COM Interop 我通过AssemblyInfo.cs编辑并启用[assembly: ComVisible(true)] 我用一个强有力的名字签署了我的大会 如果我不是作为管理员运行VS2012我得到此错误: Cannot register assembly ‘absolute\path\to\NameOf.dll’ access denied. Please make sure you’re running the application as administrator. Access to the registry key ‘HKEY_CLASSES_ROOT\NameOf.DllClass’ is denied Cannot register assembly ‘absolute\path\to\NameOf.dll’ […]

如何用Delphi编写WebDAV服务器?

有一些WebDAV客户端可用于Delphi(例如包含在Indy 10中)。 是否还有一个用Delphi编写的简单WebDAV服务器解决方案? 如果还没有,您可能知道使用不同语言(C#,Java)的实现,您可以将其作为WebDAV服务器实现的起点推荐吗? (它不一定是一个function齐全的解决方案,一个相当简单的骨架可能会更有帮助。)

从C#代码调用delphi DLL函数

我有一个在Delphi 2007中编译的DLL和一个在其他Delphi项目中使用它的例子。 这是代码的一部分: TErrorCallback = function(Msg:PChar):byte of object; TSaveEventCallback = function (Line:PChar; HiCode:PChar; LoCode:PChar; MobileNo:PChar):byte of object; function InitModule(ErrorCallback:TErrorCallback; SaveEventCallback :TSaveEventCallback; MainWindowHandle:THandle; Sock_Event:integer):byte; stdcall; external ‘My.dll’ name ‘InitModule’; function DLLSocketEvent(var msg: TMessage): byte; stdcall; external ‘My.dll’ name ‘DLLSocketEvent’; function InitObjList(Objs: array of PChar; NumObjs: byte; Name: PChar):byte; stdcall; external ‘My.dll’ name ‘InitObjList’; 这是我的C#模拟: class Message […]