C#连接数据库封装类.doc
2022-05-09 11:03:44 121KB 数据库
OSS.Http项目对于.Net Standard标准库的支持已经迁移完毕,OSS开源系列两个最底层的类库已经具备跨运行时支持的能力。由于OSS.Http类库是几年前我参照RestSharp的思路,完成的一个轻量型Http请求框架。因为时间较久底层使用的还是HttpWebRequest,这次基本上是完全重构,这篇文章主要包含 1. HttpClient的介绍,2. 重构的思路, 3. 容易遇到的问题。 一. httpclient的基本介绍 HttpClient应该是在.net framework4.5版本左右引用的新功能,在此之前常用的是HttpWebRequest,相比较而言,前者更加的简单
2022-05-09 10:53:40 177KB httpclient ie li
1
//创建初始化播放器资源 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] extern public static IntPtr libvlc_new(int argc, IntPtr argv); //创建播放器实例 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern IntPtr libvlc_media_player_new(IntPtr libvlc_instance); // 释放libvlc实例 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_release(IntPtr libvlc_instance); //获取库版本信息 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern String libvlc_get_version(); // 从视频来源(例如Url)构建一个libvlc_meida RTSP [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern IntPtr libvlc_media_new_location(IntPtr libvlc_instance, IntPtr path); // 从本地文件路径构建一个libvlc_media rtsp串流不适合调用此接口 // [MarshalAs(UnmanagedType.LPStr)] string path [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern IntPtr libvlc_media_new_path(IntPtr libvlc_instance, IntPtr path); /// /// 影片长度 /// /// /// [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern IntPtr libvlc_media_player_get_length(IntPtr libvlc_media_player); //释放对象 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_release(IntPtr libvlc_media_inst); // 将视频(libvlc_media)绑定到播放器上 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_set_media(IntPtr libvlc_media_player, IntPtr libvlc_media); //创建(libvlc_media)播放窗口 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_new_from_media(IntPtr libvlc_media_player); // 设置图像输出的窗口 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_set_hwnd(IntPtr libvlc_mediaplayer, Int32 drawable); //播放 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_play(IntPtr libvlc_mediaplayer); //暂停 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_pause(IntPtr libvlc_mediaplayer); //停止 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_stop(IntPtr libvlc_mediaplayer); // 解析视频资源的媒体信息(如时长等) [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_parse(IntPtr libvlc_media); // 返回视频的时长(必须先调用libvlc_media_parse之后,该函数才会生效) [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern Int64 libvlc_media_get_duration(IntPtr libvlc_media); // 当前播放的时间 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern Int64 libvlc_media_player_get_time(IntPtr libvlc_mediaplayer); // 设置播放位置(拖动) [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_set_time(IntPtr libvlc_mediaplayer, Int64 time); /// /// 抓图 /// /// /// 经典0 /// 完整路径,文件名英文或下划线开头 /// /// /// [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern int libvlc_video_take_snapshot(IntPtr libvlc_mediaplayer, uint num, IntPtr filePath, uint i_width, uint i_height); //media player release [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_media_player_release(IntPtr libvlc_mediaplayer); // 获取音量 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern int libvlc_audio_get_volume(IntPtr libvlc_media_player); //设置音量 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_audio_set_volume(IntPtr libvlc_media_player, int volume); // 设置全屏 [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern void libvlc_set_fullscreen(IntPtr libvlc_media_player, int isFullScreen); /// ///判断是否可以录像 /// /// /// //Can the media player record the current media? [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern bool libvlc_media_player_is_recordable(IntPtr libvlc_media_player); /// ///判断是否在录像 /// /// /// [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern bool libvlc_media_player_is_recording(IntPtr libvlc_media_player); /// /// 录像开始 /// /// /// 保存路径+文件名(d:\\record (将在D盘根目录保存为record.mp4)) /// [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern int libvlc_media_player_record_start(IntPtr libvlc_media_player, IntPtr psz_PathFilename); /// /// 录像停止 /// /// /// [DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)] public static extern int libvlc_media_player_record_stop(IntPtr libvlc_media_player);
2022-05-09 10:46:12 36.14MB libvlc dll 录像 onvif
1
简易的 layui 三级联动 使用只需要一行代码 封装到了layui模块 layui专用
2022-05-09 10:23:19 849KB 三级联动 layui
1
支持断线重连 自动录像 开启语音
2022-05-09 10:07:51 49.91MB c# 海康 .net
1
微信公众号开发常用接口封装,企业开发微信公众号时,经常会需要调用到微信官方的提供的接口,这里我在此封装好了这些常用的开发接口,供开发者们快速上手公众号开发,以节约开发者自己的时间,和提高开发项目的效率,非常实用
2022-05-09 09:38:48 161KB php微信公众号
1
整理的这3个集成库,有一部分是网上下载的,有一部分是自己画的,如有看见熟悉的身影请勿过分激动。有兴趣的朋友可以加入一起来整理,方便大家的学习,有什么好的建议可以一起探讨探讨。 大部分的元器件是我们经常使用的,平常学习的时候可以放心使用,直接在库里面安装即可。因个人习惯,有些焊盘为了便于手工焊接都做了放大焊盘处理了,并非是标准焊盘,可能在机器贴片的时候会有问题。并且即使百密也有一疏的时候,有些封装难免会出错,如有朋友将该库使用到自己的产品上面去,请务必核实每一个元件,因自己的懒惰造成的经济上面的损失请自己负责,本人不做任何担保。如发现有问题的朋友可在讨论中通知我改正。 1、Common Power集成库 2、Common Header集成库 3、Common Device集成库
2022-05-08 16:22:46 116.53MB 集成库 pcb封装库 电路方案
1
1. 只需要包含头文件. 2. 支持无SECTION的 Key-value 读写. 3. 跨平台. 4. 可配置 "=" 两边需不需要空格等. 详情用法请见Test内容。 eg: CSimpleIniA ini; ini.SetUnicode(); SI_Error rc = ini.LoadFile("example.ini"); if (rc < 0) { /* handle error */ }; ASSERT_EQ(rc, SI_OK); const char* pv; pv = ini.GetValue("section", "key", "default"); ASSERT_STREQ(pv, "value"); ini.SetValue("section", "key", "newvalue"); pv = ini.GetValue("section", "key", "default"); ASSERT_STREQ(pv, "newvalue");
2022-05-08 16:09:32 23.71MB C++ ini linux windows
1
EU104是具有5个UART接口的数据转发芯片,可实现将1个UART扩展为4个UART接口,主接口通讯速率最高460800bps,子接口通讯速率最高38400bps,各接口通讯速率可由软件独立设置,包括数据位、校验位、停止位等,可适应绝大部分串口设备的通讯要求,紧凑的SOP16封装、2.0~5.5V供电电压、工业级温度范围等特性方便集成嵌入。 每个接口均有独立缓存(最多1024字节),有按字节或按数据帧两种模式。 内置RC振荡器或者外接高精度温补晶振,在整个工业级温度范围保持准确时钟。
2022-05-08 15:33:04 632KB 串口扩展芯片 UART扩展芯片 SOP16封装
1
我们通过编码得到的h264和aac数据通常需要封装成mp4文件,可以使用mp4v2实现这样的封装,封装的时候需要注意一些细节,比如读取sps、pps,判断idr、音频固定时间戳等。文章附件资源,原文链接:https://blog.csdn.net/u013113678/article/details/122833036
2022-05-08 14:08:37 1.19MB aac h.264 音频编码解码 视频处理