草庐IT

com_create_guid

全部标签

c# - 为 COM DLL 创建 .NET 包装器的工具?

是否有任何开源工具可以自动为COMDLL库生成.NET包装器? 最佳答案 在.NET中使用COM对象不需要包装器。在VisualStudio中,在解决方案资源管理器中右键单击您的项目名称,然后选择“添加引用”。任何已注册的COM对象都将列在COM选项卡中。只有在将.NET程序集用作COM对象时才需要互操作包装器,而不是像您在问题中描述的那样相反。 关于c#-为COMDLL创建.NET包装器的工具?,我们在StackOverflow上找到一个类似的问题: htt

c# - 将 System.Decimal 转换为 System.Guid

我有一个很大的字典,其中的键是十进制,但是System.Decimal的GetHashCode()非常糟糕。为了证明我的猜测,我运行了一个包含100.000个相邻小数的for循环并检查了分布。100.000个不同的十进制数字仅使用2(两个!!!)不同的哈希码。十进制表示为16个字节。就像Guid一样!但是Guid的GetHashCode()分布非常好。如何尽可能便宜地将小数转换为C#中的Guid?不安全的代码是可以的!编辑:请求测试,所以这里是代码:decimald=96000000000000000000m;Dictionaryhashcount=newDictionary();in

c# - 将字符串拆分为 GUID 数组

如果我有一个竖线分隔的列表,我可以将它们自动拆分成一个GUID数组吗?所以“guid1|guid2”然后Guid[]values=selectedValue.Split("|".ToCharArray());会很好。 最佳答案 几乎:Guid[]values=selectedValue.Split('|').Select(s=>Guid.Parse(s)).ToArray();如果任何Guid无效,这将抛出FormatException。如果你想忽略它们,你可以按照Jeremy在评论中的建议去做:"9FE027E0-CF95-492

c# - BitmapFrame.Create 异常(WPF 框架中的错误?)

我实现了一个C#应用程序,它以30fps的帧速率接收帧RGB。帧到达事件是用这段代码管理的:voidclient_ColorFrameReady(objectsender,ColorFrameReadyEventArgse){mycounter++;Console.WriteLine("newframereceived:"+mycounter);if(writer!=null){count++;if(count%2==0){using(varframe=BitmapImage2Bitmap(e.ColorFrame.BitmapImage))using(varthumb=ResizeB

c# - Guid.NewGuid() 返回重复项?

我们有一个应用程序可以为我们的一项服务生成模拟数据以用于测试目的。每个数据项都有一个唯一的Guid。然而,当我们在对模拟器进行一些小的代码更改后运行测试时,它生成的所有对象都具有相同的Guid。创建了一个数据对象,然后是一个for循环,其中修改了对象的属性,包括一个新的唯一Guid,并通过远程处理将其发送到服务(可序列化,而不是按引用编码,如果这就是你的想法),循环并再次执行,等等。如果我们在循环中放置一个小的Thread.Sleep(...),它会生成唯一的ID。我认为这是一个转移注意力的问题。我创建了一个测试应用程序,它只是一个接一个地创建了一个guid,但没有得到一个副本。我的理

c# - 如何将字符串列表转换为 guid 列表

我有以下创建字符串列表的代码行。ListtstIdss=model.Ids.Where(x=>x.Contains(entityId)).Select(x=>x.Split('_').First()).ToList();我需要将其转换为Guid列表。即ListPermissionIds.model.PermissionIds=Array.ConvertAll(tstIdss,x=>Guid.Parse(x));我尝试了上面的方法,但出现了以下错误。model.PermissionIds在我的模型类中实现如下。publicListPermissionIds{get;set;}错误3>>T

c# - 在 C# 中获取整数的高字节和低字节并将其作为 char 数组发送到 com 端口,如何?

在C中我会这样做intnumber=3510;charupper=number>>8;charlower=number&&8;SendByte(upper);SendByte(lower);其中upper和lower都=54在C#中我这样做:intnumber=Convert.ToInt16("3510");byteupper=byte(number>>8);bytelower=byte(number&8);charupperc=Convert.ToChar(upper);charlowerc=Convert.ToChar(lower);data="GETDM"+upperc+lowe

c# - 使用 COM 从注册表加载类适用于 ToolsVersion ="2.0"但因 ToolsVersion ="4.0"而失败

我有一个c#项目,它使用内部vb项目作为COM。当我将项目转换为VS2010时,以下行向我抛出异常:SetRTCClient_=NewRTCCORELib.RTCClientRTCCore.RTCClient是MicrosoftMergeModuleforRTC(RTC客户端API1.2)的一部分,您可以将其嵌入安装包(在我的例子中包括EXE)。RTCCore.RTCClient是在HKEY_CLASSES_ROOT\RTCCore.RTCClient下注册到注册表的类我得到的错误是:ERROR:AutomationerrorThespecifiedmodulecouldnotbefo

c# - 可以从 .NET 与 64 位 COM 服务器 (Photoshop) 交互吗?

我一直在尝试通过添加COM引用和后期绑定(bind)来编写一些代码来与Photoshop进行交互。我花了一段时间才意识到代码确实有效,但不适用于64位版本的Photoshop。我在64位Photoshop中得到的异常如下:COMExceptionwasunhandledRetrievingtheCOMclassfactoryforcomponentwithCLSID{D9389EDE-AEF8-4092-9377-075E94B7CB9A}failedduetothefollowingerror:80080005Serverexecutionfailed(ExceptionfromHR

device_create() 创建设备节点,device_del()删除设备节点

0背景    最近在尝试开发linux设备驱动,虽然可以在命令行下通过mknod命令手动创建设备节点,但是这种操作不符合标准驱动的开发过程,并且linux内核提供了一组函数函数device_create()和device_del()可以在加载驱动时候自动在/dev目录下创建相应设备节点,并在卸载模块时删除该节点。1 函数device_create()        函数device_create()用于动态地创建逻辑设备,并对新的逻辑设备类进行相应的初始化,将其与此函数的第一个参数所代表的逻辑类关联起来,然后将此逻辑设备加到Linux内核系统的设备驱动程序模型中。函数能够自动地在/sys/de