随笔分类 - C# 托管和非托管
摘要:参考网址: https://stackoverflow.com/questions/46100105/managementeventwatcher-throws-managementexception-with-call-to-stop 0 I have the following piece of
阅读全文
摘要:参考网站:编写一个简单的COM组件_a ray of sunshine-CSDN博客 (1) 用MIDL编写.idl文件 //将以下代码保存成 IXIYIZ.idl 文件 //在命令行上进行编译,编译命令: //midl IXIYIZ.idl //生成 IXIYIZ.h ,dlldata.c, IX
阅读全文
摘要:PnP(Plug and Play,即插即用)是指用户不必干预计算机的各个外围设备对系统资源的分配,而将这一繁杂的工作交给系统,由系统自身去解决底层硬件资源,包括IRQ(中断请求)、I/O(输入输出端口)地址、DMA(直接内存读写)和内存空间等的分配问题。对用户而言,只要将外围设备“插上”就能使用。
阅读全文
摘要:托管资源指的是.NET可以自动进行回收的资源,主要是指托管堆上分配的内存资源。托管资源的回收工作是不需要人工干预的,有.NET运行库在合适调用垃圾回收器进行回收。 非托管资源指的是.NET不知道如何回收的资源,最常见的一类非托管资源是包装操作系统资源的对象,例如文件,窗口,网络连接,数据库连接,画刷
阅读全文
摘要:参考网址: https://www.cnblogs.com/zjoch/p/5999335.html Windows Data Type .NET Data Type BOOL, BOOLEAN Boolean or Int32 BSTR String BYTE Byte CHAR Char DOU
阅读全文
摘要:前言: 好久之前,某个网友提的需求,对商品进行加价,根据原商品的价格不同,加价的方式不同。 具体如下: 250元以下 按比率10%以内加价251~500 加价 25元以下501~5000 按比率 5%以内加价5000以上 加价250元以下比如某种商品价格是:6000或者10000按照5000元以上的
阅读全文
摘要:析构函数: (来自百度百科)析构函数(destructor) 与构造函数相反,当对象脱离其作用域时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。 C#中的析构函数
阅读全文
摘要:AppDomain 详解 AppDomain是CLR的运行单元,它可以加载Assembly、创建对象以及执行程序。 AppDomain是CLR实现代码隔离的基本机制。每一个AppDomain可以单独运行、停止;每个AppDomain有自己默认的异常处理;一个AppDomain的运行失败不会影响到其他
阅读全文
摘要:接口文件 /*++ (do not edit the above line) ******************************************************************************** ** ** “INTEL CONFIDENTIAL ** C
阅读全文
摘要:C#写界面比较方便,而C++则擅长写算法,所以将两者结合起来将会加快程序的开发速度,并保证程序的质量。但C#与C++的混合编程有很多细节问题需要注意,下面简要列举一些并指出相应的解决办法。 1. 将本机C++代码(指非托管C++)编译成一个dll,供C#调用,调用方法为 [DllImport(×××
阅读全文
摘要:上位机和下bai位机分别是:du1、上位机:上位机是zhi指可以直接发出dao操控命令的计算机,一般是PC/host computer/master computer/upper computer,屏幕上显zhuan示各种信号变化。2、下位机:下位机是直接控制设备获取设备状况的计算机,一般是PLC/
阅读全文
摘要:abstract class Vehicle { public abstract void Drive(); } class Car : Vehicle { public override void Drive() { Console.WriteLine("Car is driving...");
阅读全文
摘要:现在在Windows下的应用程序开发,VS.Net占据了绝大多数的份额。因此很多以前搞VC++开发的人都转向用更强大的VS.Net。在这种情况下,有很多开发人员就面临了如何在C#中使用C++开发好的类的问题。下面就用一个完整的实例来详细说明怎样用托管C++封装一个C++类以提供给C#使用。 比如,现
阅读全文
摘要:1、C#与.NET、CLR、CLI是什么关系?什么是.NET框架? 这个问题好专业啊!一句话两句话还真不好说清。您听说过C++中有个COM的概念吧?您听说过JAVA里的虚拟机吧?CLR(公共语言运行时)就是“COM虚拟机”。而CLI(公共语言基础架构)就是CLR的指令集。而.NET是CLI的一种实现
阅读全文
摘要:c++本地动态连接库代码 1 #pragma once 2 #include "stdafx.h" 3 4 #ifdef PERSON_EXPORTS 5 #define PERSON_API __declspec(dllexport) 6 #else 7 #define PERSON_API __
阅读全文
摘要:选择工程,右键-工程属性 其中: VC++目录 ——>包含目录,对所有的项目及未来新建的项目都有效 c/c++——>常规——>附加包含目录,仅对当前项目有效 绝对路径设置方法: 在VS工程中,添加c/c++工程中外部头文件及库的基本步骤: 1.添加工程的头文件(.h)目录:工程--属性--配置属性-
阅读全文
摘要:C#中资源分为托管资源和非托管资源。 托管资源由垃圾回收器控制如何释放,不需要程序员过多的考虑(当然也程序员也可以自己释放)。 非托管资源需要自己编写代码来释放。那么编写好的释放非托管资源的代码(释非代码)由谁来调用呢。有两种实现方式: 一 将释非代码放到构造函数析构函数中,由系统自动调用,系统会在
阅读全文
摘要:实际应用中多个线程往往需要共享数据,因此必须使用同步技术,确保一次只有一个线程访问和改变共享数据。同步又分为进程内部线程的同步以及进程之间线程的同步。 进程内部线程同步: 1. lock : 使用比较简单 lock(obj){ Synchronize part }; 只能传递对象,无法设置等待超时;
阅读全文