c#marshal 第3页
- C# Dump
-
C#内存转储,或称为dump文件,是应用程序在特定时刻状态的快照。它们对于诊断问题(如性能问题、崩溃和内存泄漏)非常有帮助。本文将向您介绍什么是内存转储,如何生成它们,以及如何分析它们。1.什么是内存转储?内存转储实质上是一个应用程序在特定点状态的快照。它包含了与应用程序相关的系统内存中的所有内容,...
- C# 在Excel中添加或删除筛选器 日期筛选、文本筛选、数字筛选
-
在C#中,你可以使用Microsoft的OfficeInterop库来操作Excel,包括添加、应用和删除筛选器。以下是一些基本的示例,展示了如何在Excel工作表上执行这些操作。首先,确保你的项目引用了Microsoft.Office.Interop.Excel。添加引用如果你使用NuGet,你...
- CAD二次开发命令窗口交互(COM接口c#语言)
-
1.介绍c#用COM接口实现在CAD中窗口交互有多种方式,比如,选择集,输入参数等,本次主要讲utility方法下的属性;2.详细介绍//获取CAD应用程序,调用COMAcadApp=(AcadApplication)System.Runtime.InteropServices.Marsha...
- C# IO操作之 如何玩转路径
-
本篇继续前两篇内容,跟大家介绍一下Path类以及FileSystemInfo这个类的主要方法和属性。上文提到,在《C#基础知识系列-IO篇》之文件相关的内容完结之后,会带领大家开发一个小工具-快速检索文件所在目录。1.3.PathPath的中文名称有路径的意思,所以Path类就是路径类,C#把P...
- C#与C++交互开发系列(五):掌握P/Invoke的高级技巧
-
欢迎来到C#与C++交互开发系列的第五篇。在这篇博客中,我们将深入探讨一些高级的P/Invoke技巧。这些技巧能够帮助你处理更加复杂的互操作场景,包括结构体和回调函数的传递、多线程环境下的调用,以及错误处理。5.1结构体的传递在P/Invoke中传递结构体时,需要确保C#和C++中结构体的定义一致...
- C#和C++混合编程开发示例
-
C#使用过程中经常会遇到和C++联合开发的过程,通过C++编写动态库,封装成dll后再C#中调用,在此做个记录,并供后期查看一、新建C#控制台项目打开VisualStudio,新建一个C#控制台项目,项目名称HelloWorldTest点击下一步,一个空的默认c#项目创建完成二、创建C++库在解决方...
- 面试 | .NET基础知识快速通关(5)
-
此系列文章为我在2015年发布于博客园的.NET基础拾遗系列,它十分适合初中级.NET开发工程师在面试前进行一个系统的复习,因此我将其搬到公众号分享与你。本文为第五篇,我们会对.NET的字符串相关考点进行基础复习,全文会以Q/A的形式展现,即以面试题的形式来描述。1StringBuilder有何作...
- 跨语言调用C#代码的新方式-DllExport
-
简介上一篇文章使用C#编写一个.NET分析器文章发布以后,很多小伙伴都对最新的NativeAOT函数导出比较感兴趣,今天故写一篇短文来介绍一下如何使用它。在以前,如果有其他语言需要调用C#编写的库,那基本上只有通过各种RPC的方式(HTTP、GRPC)或者引入一层C++代理层的方式来调用。自从微软开...
- C#超能编程:AI时代的代码艺术
-
在AI的浪潮中,C#不仅仅是一门编程语言,它是一种艺术,一种力量,一种在数字世界中创造智能生命的方式。本文将带你走进C#进行AI工程开发的基础世界,探索这门语言的深度和广度,揭开其在AI领域的神秘面纱。C#的两大类型系统:值与引用的交响C#的设计哲学与Java截然不同。当Java还在坚持一切皆对象的...
- C# 中的性能提升 - Span 和 Memory
-
简单来说,Span<T>和Memory<T>能够以安全的方式使用指针访问内存,它们提供了一种类型安全的方法来访问任意内存的连续区域。他们表示连续的内存块,没有任何复制语义,类似于指针。另外还有只读版本ReadOnlySpan<T>和ReadOnlyMe...