国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

淺析Visual C#編寫DLL

開發(fā) 后端
這里介紹以實(shí)例方式介紹了用Visual C#編寫DLL實(shí)現(xiàn)串行通信的方法,并給出了用其它語言調(diào)用該DLL的范例。

本文是作者根據(jù)工程中的實(shí)踐經(jīng)驗(yàn),以實(shí)例方式介紹了用Visual C#編寫DLL實(shí)現(xiàn)串行通信的方法,并給出了用其它語言調(diào)用該DLL的范例。

一、引言

串行通訊口作為計(jì)算機(jī)與外部串行設(shè)備進(jìn)行數(shù)據(jù)傳輸?shù)闹匾丝冢蚱涫褂煤唵巍⒎奖悖跇I(yè)界的各種計(jì)算機(jī)系統(tǒng)中得到了廣泛的應(yīng)用。由于應(yīng)用范圍很廣,軟件人員在串行通信方面也積累了豐富的編程經(jīng)驗(yàn)。關(guān)于串行通信的文章不時(shí)見于報(bào)端,并且還有一些專門討論
串行通訊編程的書籍,為軟件人員提供了豐富的資源,同時(shí)對(duì)初次涉足串口編程的軟件開發(fā)者提供很好的范例幫助。

雖然關(guān)于串口編程的資料很多,但由于工程上需求多種多樣,需要根據(jù)不同的條件對(duì)串口進(jìn)行靈活控制,在實(shí)際應(yīng)用中,常用的方法有:
(1)用匯編或標(biāo)準(zhǔn)通訊函數(shù),往指定端口直接讀寫數(shù)據(jù);
(2)利用Visual Studio提供的MSComm控件;
(3)使用Windows提供的API函數(shù)。

本文是作者在工程實(shí)踐中根據(jù)實(shí)際需要,在Visual C#環(huán)境中,直接使用Windows提供的API函數(shù)實(shí)現(xiàn)一個(gè)串行通信動(dòng)態(tài)鏈接庫(DLL)的完整實(shí)例,實(shí)例既給出了DLL函數(shù)的編寫方法,又包括一份用其它編程工具(VB)對(duì)此DLL進(jìn)行聲明及調(diào)用的范例。為了使讀者一目了然,并減少代碼量,本例作了簡化,但完全可以運(yùn)行。希望對(duì)需要進(jìn)行串行通信編程的同行以及需要學(xué)習(xí)編寫DLL的編程愛好者提供一點(diǎn)幫助。

二、準(zhǔn)備知識(shí)

1、Visual C#編寫DLL基本概念

動(dòng)態(tài)鏈接庫(DLL) 是Windows操作系統(tǒng)的基礎(chǔ),Windows API中的所有函數(shù)就是包含在DLL中,它有眾多優(yōu)點(diǎn),如:簡化軟件項(xiàng)目管理以便分工合作,有助于節(jié)省內(nèi)存,便于資源共享并且可以用多種語言來編寫。

用VC# 編寫動(dòng)態(tài)鏈接有以下四種類型:Win32 DLL、MFC常規(guī)DLL(動(dòng)態(tài)鏈接MFC)、MFC常規(guī)DLL(靜態(tài)鏈接MFC)、MFC擴(kuò)展DLL等,關(guān)于它們之間的區(qū)別,在此不一一介紹,可參閱相關(guān)文檔。本程序的編寫為Win32 DLL。

2、串行通信基礎(chǔ)知識(shí)

在Windows系統(tǒng),系統(tǒng)通過一個(gè)叫DCB(Device Control Block)的結(jié)構(gòu)對(duì)串行口進(jìn)行配置,通過Windows API GetCommState函數(shù)可以得到串行通訊口的狀態(tài)信息,使用SetCommState函數(shù)可以對(duì)串行通訊口進(jìn)行設(shè)置,實(shí)現(xiàn)串行通信一般需按以下四步進(jìn)行:
(1) 打開串口。由于串口是獨(dú)占性資源,因此應(yīng)用程序打開串口后,別的應(yīng)用程序就不能再打開此串口了。
(2)配置串口。利用GetCommState函數(shù)獲取串口當(dāng)前配置,根據(jù)需要更改DCB 結(jié)構(gòu)中的參數(shù),然后用SetCommState函數(shù)設(shè)置串口通訊參數(shù)。
(3)數(shù)據(jù)傳送。在串口上進(jìn)行數(shù)據(jù)發(fā)送接收,并根據(jù)需要進(jìn)行校驗(yàn),觸發(fā)一些事件等等。這個(gè)串口通訊DLL的目的就是收發(fā)數(shù)據(jù)。
(4)關(guān)閉串口。不需要此串口時(shí),關(guān)閉串口,供其它的應(yīng)用程序使用。

3、CALLBACK函數(shù)

在微軟的官方手冊(cè)中是這樣定義CALLBACK函數(shù)的:“CALLBACK函數(shù)是由應(yīng)用程序定義而由操作系統(tǒng)調(diào)用的函數(shù)”。在我們編寫DLL時(shí),就是由應(yīng)用程序定義而由此DLL執(zhí)行的函數(shù),這一機(jī)制在被調(diào)用者(DLL)和調(diào)用者(應(yīng)用程序)之間進(jìn)行信息傳遞是非常有用的。這一特性,讓初學(xué)者較難理解,但是它卻是編寫串行通信程序者的福音,正是由于使用這一特性,才可很方便地在動(dòng)態(tài)鏈接庫中實(shí)現(xiàn)MSComm控件中的OnComm 事件,并且可根據(jù)需要進(jìn)行靈活控制。以上介紹Visual C#編寫DLL。

【編輯推薦】

  1. C#特有線程功能
  2. 淺談C#對(duì)象和集合
  3. 淺析C# FTP WebRequest對(duì)象
  4. C#分部方法的應(yīng)用場景
  5. 概述C#線程功能
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-07-31 17:28:35

C#語言調(diào)用DLL

2011-03-31 09:13:00

Visual Stud

2010-01-26 14:10:22

Visual C++

2009-08-28 15:05:35

C#編寫Calenda

2009-08-06 16:58:40

C#編寫ActiveX

2009-08-12 18:04:44

編寫C#多線程

2009-08-24 15:58:00

Visual C#生成

2009-08-14 10:35:25

C#最小化編寫

2009-09-11 09:10:30

C#編寫游戲

2009-08-05 16:49:42

C#中調(diào)用dll

2009-08-14 09:43:59

C#復(fù)制構(gòu)造函數(shù)

2009-09-03 17:54:04

C#開發(fā)瀏覽器

2009-09-24 14:59:38

C#編寫COM組件

2009-08-07 17:25:37

C# SortedLi

2009-08-17 18:34:50

C# ChangeCo

2009-08-14 17:45:52

C# ArrayLis

2009-08-25 17:59:49

C#入門

2009-07-31 14:54:48

dll函數(shù)C#導(dǎo)出

2009-08-12 15:20:21

C#事件處理

2009-07-31 14:03:21

C# Format函數(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

精品蜜桃传媒| 精品国产网站| 欧美色电影在线| 在线免费av导航| 日韩av在线精品| 国偷自产视频一区二区久| 91一区二区三区| 精品综合免费视频观看| 99热这里只有精品在线播放| 精品国产精品三级精品av网址| 五月花成人网| 午夜欧美不卡精品aaaaa| 影音先锋亚洲精品| 午夜肉伦伦影院| 色诱视频网站一区| 欧美videos粗暴| 亚洲自拍欧美色图| 夫妻av一区二区| 天堂在线中文字幕| 亚洲人成网站色ww在线| 欧美mv日韩| 97视频久久久| 欧美三级韩国三级日本一级| 日韩免费在线电影| 国产精品推荐精品| 国产午夜精品理论片a级大结局| 人成在线免费视频| 久久成人在线视频| 一本色道久久| avtt天堂资源网| 日韩精品亚洲视频| 香蕉久久网站| 91传媒久久久| 91精品国产麻豆国产自产在线 | 国产嫩草影院久久久久| sese一区| 欧美极品少妇全裸体| 亚洲一区免费| 国产1区2区视频| 日韩精品免费电影| 午夜欧美在线| 一区二区三区国产免费| 精品成人一区二区三区| 天天操综合520| 黄色一级视频片| 国内自拍视频一区二区三区| 在线观看入口黄最新永久免费国产 | 一区二区在线观看不卡| 日韩三级成人| 国产亚洲视频在线观看| 91精品国产视频| 久久久久久免费看| 在线电影院国产精品| 在线观看17c| 亚洲九九在线| 免费观看成人网| 精品亚洲一区二区三区四区五区| 欧美jizz| 国产乱子视频| 欧美插天视频在线播放| 久久精品99国产精品日本| 免费国产在线视频| 国产激情久久久久| 亚洲国产精品ⅴa在线观看| 亚洲成人va| 亚洲欧洲日夜超级视频| 欧美亚洲一区三区| 成人羞羞网站入口| 色琪琪原网站亚洲香蕉| 久久久国产影院| 国产福利电影一区二区三区| 免费污视频在线观看| 免费一区二区三区| 欧美中文字幕一区| 国产精品v欧美精品v日本精品动漫| 在线观看老湿视频福利| 欧美一区第一页| 亚洲少妇中出一区| 色88888久久久久久影院| 精品日韩久久久| 欧美俄罗斯乱妇| 91丝袜呻吟高潮美腿白嫩在线观看| 在线毛片网站| 四虎黄色影院| 色女人综合av| 国产精品精品视频一区二区三区| 亚洲精品国产品国语在线| 99re在线视频这里只有精品| 国产91丝袜在线18| 一个色综合网| 91蝌蚪视频在线观看| 在线视频国产日韩| 成人午夜私人影院| 欧美伊人亚洲伊人色综合动图| 麻豆传媒网站在线观看| 伊人久久久久久久久久| av一区二区三区在线| 国产精品亚洲d| 国产主播在线看| 午夜精品久久久久久久久久久久久 | 77thz桃花论族在线观看| 日韩禁在线播放| 官网99热精品| 国产a视频免费观看| 一区二区电影免费观看| 成人全视频在线观看在线播放高清 | 日韩不卡一区二区| 久久久久久久久久美女| 日韩午夜激情电影| 亚洲国产精品字幕| 久久久久久久久久久亚洲| 91大神福利视频在线| 久久99热这里只有精品国产| 国语自产精品视频在免费| 中文字幕在线亚洲| 亚洲精品福利在线| 欧美激情一级欧美精品| 国产在线精品一区二区三区》| 区一区二区三区中文字幕| 天天天干夜夜夜操| 亚洲第一导航| 免费观看成人在线| 午夜久久资源| 公共露出暴露狂另类av| 国产手机免费视频| 91精品国产综合久久久久久蜜臀 | 亚洲一区二区三区四区在线免费观看 | 亚洲色图13p| 欧美精品做受xxx性少妇| 欧美日韩精品在线| 一区二区在线观看不卡| 欧美日韩免费网站| 一区二区三区国产精品| 欧洲一区二区三区在线| 日韩亚洲欧美一区二区三区| 69久久夜色精品国产69乱青草| 国产精品久久久久久久久粉嫩av| 国产极品jizzhd欧美| 蜜桃久久久久久久| 国产精品333| 欧美综合在线观看| 欧美三级欧美一级| 92国产精品观看| 色欧美自拍视频| 性欧美18xxxhd| 成人高清免费| 中文字幕一区二区三区5566| 午夜精品理论片| 7777精品伊人久久久大香线蕉 | 欧美系列一区二区| 国产中文字幕精品| 日韩国产一区二区三区| 涩涩视频网站在线观看| 伦理电影国产精品| 自拍偷拍视频在线| 国产精品永久免费观看| 日韩禁在线播放| 精品久久久久久亚洲国产300| 国产在线麻豆精品观看| 天天射天天综合网| 国产麻豆一区二区三区| 国内精品不卡| 毛片中文在线观看| 91网站在线观看免费| 成人免费直播live| 久久精品国产一区二区三区| 欧美三级一区二区| 亚洲欧洲制服丝袜| 国产91富婆露脸刺激对白| 国产精品va| 亚洲激情77| 国产成人a视频高清在线观看| 男人资源在线播放| 原千岁中文字幕| 国产精品第12页| 一道精品一区二区三区| 成人黄色网免费| 色综合久久天天综线观看| 亚洲成人av资源网| 91福利视频久久久久| 亚洲激情av在线| 91麻豆国产香蕉久久精品| 青娱乐精品视频在线| 亚洲第一毛片| 欧美3p视频| 日韩母乳在线| 二区三区精品| 久久久成人av毛片免费观看| 日本动漫理论片在线观看网站| 亚洲成人av高清| 女人被爽到呻吟gif动态图下载| 国产精品无码一区二区在线| 一级特黄录像免费播放全99| 国产日韩亚洲精品| 成人av在线亚洲| 国产精品高潮呻吟久久av野狼| 久久久久久久久久久亚洲| 久久成人免费视频| 日韩中文字幕久久| 精品一区二区电影|