最新文章
|
知识管理交流
→『 技术文档交流 』
本版文数:9612 今日文数:4157
|
在软件开发和逆向工程的领域,反编译工具是非常重要的工具之一,特别是在需要对已有的应用程序进行分析、调试和修改时。dnSpy是一个功能强大的反编译工具,专门用于反编译和调试.NET应用程序。它为开发人员、逆向工程师、以及安全研究人员提供了一个友好且强大的平台,能够深入解析.NET应用程序的内部结构。1.dnSpy概述dn...
|
纯JS导出HTML页面为原生Word格式或PDF格式文档,代码如下:<divid=html2pdf_id><%=print_body%></div><divalign=center><inputtype=buttonvalue=导出Word=html2doc(html2pdf_id,<%=outTitle%>);><i...
|
一、证书申请工具:Certbot端口需求:80certbotcertonly-dexample.com--webroot交互窗口输入IIS站点根目录,以使certbot创建验证文件(通过http协议地址能够被访问到),由于生成验证文件不具备后缀名,在默认IIS安全设置中是不允许此类链接访问的,因此还需要在网站MIME类...
|
一、环境准备win10以上操作系统安装Certbot申请阿里云\腾讯云域名安装nginx1.3以上版本二、Certbot安装及SSL证书生成Certbot是一个免费、开源工具,用于自动化在Web服务器上获取和更新SSL/TLS证书。它可以通过Let’sEncrypt服务获取免费的SSL/TLS证书,这些证书用于保护网站...
|
因为Windows平台,所以先用的win-acme,一直验证不过。换虚拟机用Certbot申请,再转成IIS支持格式。Homestead安装Certbotsudosuadd-apt-repositoryppa:certbot/certbotaptupdateaptinstallcertbotCentos安装Certbo...
|
一、下载并安装软件在这个网站下载最新的软件并安装https://github.com/certbot/certbot/
github下载certbot安装程序
下载完成后直接双击安装就行了安装完成后,以管理员方式运行cmd,输入cretbot--version,如果有显示就说明安装成功了C:\Windows\Sy...
|
在编程领域,数据结构的操作一直是开发人员重点关注的内容。而如今,TypeScript5.5为我们带来了令人振奋的更新,它引入了对Set对象的4个新ECMAScript方法的支持,这无疑将集合操作推向了一个新的高度,使代码更加简洁、直观且易读。一、初探Set在JavaScript的世界里,Set是一种独特而实用的数据结...
![]() |
微软正式推出SQLServer2025,被业界誉为“近十年最重要更新”。作为AI原生数据库,它深度融合机器学习与云原生架构,为DBA带来颠覆性变革。SQLServer2025全球发布!划时代新特性来袭:AI驱动智能索引优化:实时分析负载,自动生成/调整最优索引,DBA告别手动调优噩梦!极致HTAP融合引擎:事务与分析负...
![]() |
功能介绍海量数据操作ORM性能瓶颈在实体转换上面,并且不能使用常规的Sql去实现当列越多转换越慢,SqlSugar将转换性能做到极致,并且采用数据库最佳API操作数据库达到极限性能,当然你如果不用sqlsugar了解一下原理也可以使用其他ORM实现BulkCopyBulkCopy是一种用于高效批量插入大量数据到数据库的...
|
前言作为高频操作MySQL的开发者,我发现许多小伙伴仍停留在基础的CRUD层面。今天将分享10个我在实际工作中高频使用的MySQL技巧,这些技巧不仅提升了开发效率,还能优化查询性能。学会它们,能让你的SQL操作更优雅、更高效!目录使用JSON类型存储灵活数据使用WITHROLLUP实现分组统计与总计使用CASEWHEN...
|
DataGridView作为Windows窗体应用程序中最常用的数据展示控件,其灵活的单元格渲染机制为开发者提供了无限可能。本文将深入剖析DataGridView单元格渲染的核心技术,帮助开发者解锁自定义单元格渲染的艺术。单元格渲染基础详解基础渲染类继承usingSystem;usingSystem.Collectio...
|
前言人们经常听说TypeScript就是添加了类型和附加功能的JavaScript,但却没有人谈论这些“附加功能”,仿佛他们害怕自己会发现什么似的。为了提高应用程序的灵活性和长期可扩展性,泛型被引入Web开发中,作为一种工具来复用组件。什么是TypeScript泛型?这里有这样一个有趣的场景:一位TypeScript开...
|
在阅读JavaScript源码,尤其是压缩后的代码时,很多人常常会遇到这样的片段:if(!0)//等价于if(true)if(!1)//等价于if(false)这些诡异的语法你可能一开始会觉得费解,但其实是压缩器(比如UglifyJS、Terser)为了追求最小体积和最高性能的结果。这一类代码就是所谓的JavaScri...
|
前言在项目中大家肯定偶尔会有遍历文件夹的需求,还在老老实实写递归么?!那怕是骚一点的linq递归,其实都太麻烦了,微软爸爸早就想到我们有这样的需求,直接在框架内部已经实现好了。实现遍历文件夹其实只需要一个函数就搞定了,都不用去考虑递归,真的太强了。varfiles=Directory.GetFiles(@C:\,*.*...
|
一:背景1.讲故事前几天训练营里的一位朋友在复习课件的时候,程序一跑就报错,截图如下:从给出的错误信息看大概是因为json格式无效导致的,在早期的训练营里曾经也有一例这样的报错,最后定位下来是公司的电脑安全软件导致的,一旦有非托管调试器,安全软件就会加密runtimeconfig.json,最后导致程序无法正常被调试执...
|
引言前几天开发中突然接到测试提的一个Bug,说我的时间组件显示异常。我很诧异,这里初始化数据是后端返回的,我什么也没改,这bug提给我干啥。我去问后端:“这数据是不是有问题?”。后端答:“没问题啊,我们一直都是这么返回的时间戳,其他人用也没报错。”于是,对比生产环境数据,我终于找到了问题根源:「后端时间戳的类型,从Nu...
|
Ghidra:逆向工程的强大利器在信息安全领域,逆向工程一直是安全研究员、漏洞分析师和开发者的重要工具。而在众多逆向工程工具中,Ghidra无疑是一个备受推崇的名字。作为美国国家安全局(NSA)发布的一款开源反编译软件,Ghidra以其强大的功能和广泛的应用场景,成为了逆向工程领域的得力助手。一、什么是Ghidra?G...
|
随着JavaScript不断进化,许多新特性极大提升了代码的可读性和开发效率。然而,不少开发者仍未充分利用这些强大工具。本文带你快速了解5个常被忽视但非常实用的JavaScript特性,帮你写出更简洁、更安全的代码。可选链操作符(?.)当我们访问一个嵌套很深的对象属性时,最怕的就是中途某个属性是undefined,导致...
|
在现代的网络架构中,反向代理(ReverseProxy)无处不在。无论是负载均衡、加速缓存,还是WebSocket支持,反向代理都是必不可少的工具。这篇文章将带您全面了解反向代理的概念、作用和实际使用场景,并通过Nginx的配置示例帮助您快速上手!🔍一、什么是反向代理?反向代理(ReverseProxy)是一种架设...
![]() |
随着科技的不断进步,自动化测试和操作逐渐成为提升工作效率的重要手段。SikuliX,作为一款开源的自动化软件,以其独特的图像识别技术在自动化领域中占据了重要地位。本文将为大家介绍SikuliX软件的核心特点、功能以及应用场景。什么是SikuliX?SikuliX是一款开源的图像识别自动化软件,基于视觉进行自动化操作。它...
|
一:背景1.讲故事昨晚训练营里有一位朋友提到一个问题,说C#AOT程序能否编译为一个dll,供其他语言调用,其实这个是完全没有问题的,也确实我的的文章体系中没有涉及到这块,那今天就补充完整吧。二:NativeAOT函数导出1.简单的案例在C中我相信很多人都知道用dllexport进行函数导出,如下所示:externC在...
|
前言大部分情况下我们并不需要关心结构体字段的内存布局,但是在一些特殊情况下,比如性能优化、和非托管代码交互、对结构体进行序列化等场景下,了解字段的内存布局是非常重要的。本文写作时最新的.NET正式版是.NET9,以后的版本不保证本文内容的准确性,仅供参考。本文将介绍.NET中结构体字段的内存布局,包括字段的对齐(Ali...
|
引言随着C#不断发展,模式匹配(PatternMatching)已经成为让代码更加友好、可读和强大的核心特性。从C#7.0初次引入,到C#11的能力扩展,模式匹配为处理类型判断、属性解构、集合匹配等提供了简洁、高效且类型安全的表达方式。它不仅能让if/switch等控制结构变得“声明式”,还能带来性能提升。在这篇文章里...
|
前言嗨,程序员小伙伴们,早上好!你有没有遇到过这样的情况:改了一个地方的代码,结果发现其他地方还有一模一样的逻辑,然后不得不一个个修改?或者看着自己的代码库,发现某些片段像复制粘贴的“双胞胎”一样到处都是?别担心,你不是一个人!重复代码是软件开发中的常见问题,但幸运的是,我们有多种方法可以“干掉”它。下面让我们一起探索...
![]() |
数字摘要的概念数字摘要(DigitalDigest),又称哈希值或散列值,是通过哈希函数(HashFunction)将任意长度的输入数据转换为固定长度的输出字符串的过程。这个输出字符串就是数字摘要。核心特性:固定长度:无论输入数据多大,输出长度固定(如SHA-256总是256位)确定性:相同输入总是产生相同输出不可逆性...
|