自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tomwillow的博客

专注C - Windows API编程,实现最小依赖

  • 博客(57)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

原创 ubuntu下不生成core dumped文件解决办法一则

1. 什么是core dumped文件简单讲,就是linux下的程序,在遇到空指针解引用、栈错误等原因崩溃时,bash会输出一条:有时会是这样:Segmentation fault后面跟的那个core dumped不见了,说明没有产生core dumped文件。怎样人为制造一个Segmentation fault呢?最简单的办法就是解引用一个空指针:int *p=0;printf("%d",*p);2. core dumped文件拿来干什么就是拿来在程序崩溃时还原现场用的。如果你看到

2022-04-24 09:04:45 6061 4

原创 在Visual Studio里利用pdb文件进入lib调试方法

1. 基础知识静态库和动态库首先说一下,库的导出分为静态库和动态库。导出静态库的话,会生成一个.lib文件,其实就是.obj的集合,.obj又是.cpp编译得到的,所以,静态库里有函数的实现。不过这些实现是二进制的,是不带源码的。使用静态库的时候,需要链接.lib,包含.h。导出动态库的话,会生成.dll文件和.lib文件,动态库生成的.lib文件会很小,因为这里的.lib只需要指明函数在.dll中的位置就可以了。使用的时候,需要把.dll和程序将要生成的.exe放在一个位置(双击exe运行),或

2021-07-01 16:24:44 4552

原创 原生socket使用ICMP协议实现ping单个或多个目标时发生窜包的解决方法

问题描述原生socket使用ICMP协议实现ping功能,网上代码很多了,我参考的是这本:王艳平,张越.Windows网络与通信程序设计[M].北京人民邮电出版社,2006。代码逻辑也很清晰,先构造ICMP包,把当前时间填入timestamp字段,调用sendto发到指定IP,再调用recvfrom接收,然后用当前时间减去接收到的包的timestamp字段,得到ping的时间。例子里只发了4个包,没有问题。网络通畅时,也没有问题。我改了下代码,循环向多个ip轮流发包,然后接收。问题就出现了。pin

2021-06-24 11:54:00 1788 2

原创 关于我是怎么找到MSVC的STL库的std::this_thread::sleep_for是怎么实现的这件事

直接从VS里转到定义今天阅读C++ Concurrency in Action 2nd Edition-2019,看到第四章:std::this_thread::sleep_for(std::chrono::milliseconds(100));突然好奇,这个sleep_for和windows api的Sleep有什么区别?右键,转到定义:发现sleep_for是调用的sleep_until。里面又有一个_Thrd_sleep。又追。进入xthreads.h,阿勒,这里只有声明没有定义呢。

2021-01-12 17:34:47 1245 3

原创 cmake生成涉及bullet库报错“Could NOT find Bullet (missing: BULLET_DYNAMICS_LIBRARY“解决方法一则

这几天在编译一个工程(https://github.com/benikabocha/saba),里面涉及到了bullet库和glfw库,glfw倒还好说,唯独bullet把人折磨得够呛。用cmake-gui进行configure,报错:CMake Error at D:/SOFTWARE/Program/CMAKE/cmake-3.17.0-rc3-win64-x64/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:164 (me

2021-01-08 00:17:18 1370 2

原创 利用Hook实现glut库支持multisample反走样效果(附效果图)

glut库是个老库了,最新版似乎是3.7.6,也是2001年的东西了。The OpenGL Utility Toolkit (GLUT) Programming Interface里说glut支持multisample,但是GLUT MULTISAMPLE Bitmask to select a windowwithmultisampling support. Ifmultisampling is not available, a non-multisamplingwindow will automat

2020-12-26 19:58:10 568 6

原创 双缓冲方法实现waveOut的连续无卡顿播放以及即收即放

1. waveOut基本使用方法waveOut是一套历史悠久的Windows音频API,虽然古老,但至今仍运行良好,且支持老旧系统(原生支持Windows XP)。waveOut虽然不像DirectSound那样自带混音功能,但也可以通过同时开多个播放线程实现同时播放多个声音的目的,达到事实上的混音效果。waveOut的使用一般遵循Open - Prepare - Write - Reset - Unprepare - Close的步骤。本文提到的函数均省略前缀waveOut,例如Write实际上指的

2020-12-22 16:22:13 3270 2

原创 技嘉GIGABYTE AERO 15SA风扇噪音过大加油修理方法

我这台技嘉笔记本买回来差不多3个月,风扇就开始有噪音了,有时候大有时候小,售后的话寄来寄去也麻烦。前一阵子已经难以忍受了,终于搞开修了一下。1.拆后面板一共12颗六角梅花螺丝。很简单就不附图了。2.取下散热器取散热器也蛮简单的,两边各两颗螺丝,中间7颗带弹簧卡住的螺丝。两边各两根线注意取出来,左边的线,圈住有箭头那里捏住蓝色条可以直接往上提拔出排线。3.取下风扇取风扇有4颗小的十字螺丝,很简单。4.拔出扇叶加油有些风扇用的轴卡簧,要撕开背面贴纸,从卡簧处加油。技嘉这个不是这种,我撕开背面贴

2020-11-29 13:25:33 4461 1

原创 VS2019怎样编译出可以在WinXP上运行的exe?

1 打开Visual Studio Installer点“更多”-“修改”。点“单个组件”,在“编译器、生成工具和运行时”下面找到“对 VS 2017 (v141)工具的 C++ Windows XP 支持 [已弃用]”。选中,右边会出现两个待安装的项目,第2个对第1个是依存关系,不能单独安装。这两个加起来有900MB多,我这边已经装过了,所以截图显示的0KB。2 启动VS2019以一个Win32 SDK原生窗口hello world为例:#include <windows.h>

2020-11-17 14:36:47 12594 11

原创 使用Win32 API获得端口占用列表并关闭对应进程

获得端口占用可以用命令netstat -ab实现,结束进程可以用taskkill,但是用C++怎么实现呢?答案是Windows已经提供了API实现功能。GetTcpTable可以得到当前占用的端口数量以及具体的ip和端口,但是得不到对应的进程。GetTcpTable2可以额外获得占用端口对应进程的pid,拿到pid,后面问题就好办了。下面是效果图:源码:#define _WINSOCK_DEPRECATED_NO_WARNINGS#include <iostream>#inclu

2020-08-13 18:25:18 1561 7

原创 VS C++实现openssl访问https网页教程及实例

之前我实现了访问 http 网页,以及解析大小字段实现网页的完整读取。但现在很多网站都是 https 了,而 https 在 TCP 和 IP 层中间加了一个 SSL 或者 TLS 协议,相当地麻烦,还涉及到公钥加密等,徒手搓相当不现实。C++也是这点缺点,调库很麻烦。不像 python,直接 import urllib,urlopen就可以直接开 https 的网页。本文使用 openssl库 来实现 https 网页的访问。因为我在 openssl库的使用中踩了很多坑,所以我会尽量把我踩的坑都说清楚

2020-07-08 20:59:06 3476 1

原创 文明4 刀剑之上(Steam英文版) XML Load Error 修复程序 v0.1

本程序用于修复在中文系统上运行 文明4 刀剑之上(Steam英文版) 时出现的 XML Load Error。(把操作系统语言改成英文也能解决问题,但不优雅)作者Tom Willow下载地址文明4 刀剑之上 XML Load Error 修复程序 v0.1原理游戏内有些XML文件带有欧洲语言的特殊字符,例如德语的ü。在中文系统下,这些特殊字符由于ASCII码超过127,会和后面的</German>等标签粘连识别为中文,导致</开头的结束标签不能正确识别。本程序运行时将扫描

2020-07-03 10:36:43 1840

原创 通过识别Content-Length和Transfer-Encoding实现C++ socket正确接收HTTP数据

众所周知,HTTP在运输层是TCP协议,所以在socket编程中,一般是初始化socket,解析ip,connect,send,recv的步骤。send请求头倒是容易,但在recv时就会发生问题。recv需要传入一个接收大小,但在HTTP协议中,头部并没有包大小,所以这个大小一般作为缓冲区大小使用,例如传入1024 bytes这种。HTTP丢包的问题首先我以为通过判断recv返回值,可以得知包是否接收完全,但实践发现,这种方式会产生丢包。例如,包大小实际是2000 B,在第一次recv时,接收到了1

2020-06-29 20:14:17 1125

原创 由于汇编单独生成obj导致的编译zlib-1.2.11中的minizip时出现LINK 2019,找不到match_init函数问题解决方案

为了压缩解压zip,下载了zlib库。库用CMake生成vs 2019的sln,没有问题。但是zlib本身压缩得到的数据没有zip文件头,不能输出当zip用。不过zlib里带了minizip库,可以实现压缩到zip文件和从zip文件解压。打开contrib\vstudio\vc14,打开sln。把zlibvc作为启动项目,把生成目标从dll改成lib(我打算静态编译)。编译,ok,得到了lib。但在编译minizip项目时遇到问题了。说是没找到match_init的实现。我草草搜了一下,发现d

2020-05-30 01:37:59 555

原创 由于.manifest引起的VS2019编译x64 ATL C++窗口程序时报错“应用程序无法正常启动0xc000007b”

今天把一个ATL C++程序改成64位,结果一编译就报错“应用程序无法正常启动0xc000007b”。这种情况一般是链接库的问题,用depends查看,发现一大堆 API-MS-WIN-***.dll 找不到。非常疑难杂症了。我想到可能是编译器的问题,链接了错误的dll,就开以前的64位程序进行编译,但都是正常的。这就排除了装c++ runtime的想法,肯定不是c++ runtime的问题。后面我看到有人说是 winsock2.h 和 windows.h 存在包含顺序的问题:使用Qt库时出现win

2020-05-24 12:34:17 1094

原创 将GLFW窗口嵌入Win32 SDK窗口及其多线程渲染方法

这篇文章提到了glfw嵌入mfc的办法,采用的查找进程PID再嵌入的方法,进程间通信采用UDP,略微繁琐。MFC单文档视图中嵌入GLFW窗口其实不必如此麻烦,SetParent直接就可以办到。第1步 创建标准Win32 SDK窗口#include <windows.h>LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM)...

2020-04-14 19:30:08 4120 4

原创 C++中thread调用“带mutex的类”的成员函数报错C2661:std::tuple解决方法

今天在做LeetCode的1114题《按序打印》,想在本地调试,写了如下代码:#include <vector>#include <thread>#include <mutex>#include <condition_variable>#include <functional>using namespace std;cl...

2020-02-08 17:26:05 1783 1

原创 Win32 GDI中通过手动计算高斯模糊实现阴影效果

先说一句,Photoshop的图层样式中的**“阴影”,“外发光”**效果,实质上都是高斯模糊实现的。阴影效果是在图层后偏移叠加(也就是平面投影)一个纯黑的层,然后对RGB和alpha通道做高斯模糊。外发光效果是在图层后叠加一个黄色描边的层,然后做高斯模糊。本文通过CreateDIBSection取得位图指针,直接对位图数据alpha通道进行处理,调用AlphaBlend函数实现阴影效果。效果...

2020-01-07 11:48:16 1195

原创 手把手教你用C++实现AES的128,192,256位加密以及5种分组模式(未完)

1.前言你能打开这篇文章,说明你正在学习AES加密法,介绍我就几句话带过了,AES加密法是替代DES加密法而诞生的,在2002年,在5种候选加密法中被选中作为美国的国家标准,其创始人为两个比利时人:Joan Daemen和Vincent Rijmen。需要明确的一点是,他们发明的加密法名为Rijndael,是结合了两人名字命名的,Rijndael并不与AES完全等同,前者支持更广泛的块长度(Nb...

2019-12-18 11:03:56 1509

原创 利用FFmpeg无损提取视频中源音频流

今天要从视频中扒一个谱出来,想把音频提取出来。有损提取方法很多了,利用格式工厂啊,视频编辑软件啊,开内录啊很多方法。但是我想要的是无损提取。1. MediaCoder首先尝试了MediaCoder中的“复制音频流”选项,但是怎么调都不行,点开始就卡住。后来在国外论坛上发现2010年就有人提出这个功能用不了,帖子每层都表示用不了。看来这个功能是现在都没有做好。2. FFmpeg找了很多软件,...

2019-05-20 12:18:35 28913 5

原创 C++中UTF-8, Unicode, GB2312转换及有无BOM相关问题

UTF-8转Unicode首先,UTF-8和Unicode是有转换关系的,我们假设UTF-8字符串没有BOM。 wstring UTF8toUnicode(const string &input) { int state = 0; unsigned char temp; wchar_t wc; wstring wstr; for (unsigned char c ...

2019-05-03 15:28:29 1039

原创 由于换行引起的bison程序报错ERROR: syntax error解决方法

最近在写flex & bison程序,但是bison总是解析不正确,第一次运行yyparse()是正确的,但enter后再输入,总会报错ERROR: syntax error。改写yyerror函数为yyerror(char *s){ extern int yylineno; // defined and maintained in lex extern char *yytext;...

2019-03-23 21:45:00 6290

原创 修改GLFW源码增加菜单栏按钮响应功能

上一篇GLFW获取HWND和添加菜单栏方法中写了如何在GLFW中获取窗口句柄,并添加菜单栏。但此时添加的菜单栏只能看,点了并没有反应。而GLFW也没有提供检测菜单栏按钮的方法。如果要GLFW相应菜单栏按钮的话,只能修改源码了。思路是这样的:GLFW中有一个glfwSetFramebufferSizeCallback(window, framebuffer_size_callback)函数,用于帧...

2019-03-19 00:38:45 2532 13

原创 GLFW获取HWND和添加菜单栏方法

我用的GLFW 3.2.1,翻了glfw3.h里面并没有提供更改菜单栏的API。但是我们可以用最传统的Win32 API SetMenu来实现。1.获取HWND调用Win32 API首先需要获取HWND。这里有两个方法:方法1:GetActiveWindow HWND hwnd=GetActiveWindow();方法2:使用glfwGetWin32Window这个函数在glfw3....

2019-03-18 21:03:05 4122 3

原创 VS+glfw编写openGL例子程序报错 0x59789958 (igd10iumd32.dll) 处有未经处理的异常解决思路

环境:Win10 x64VS 2013glfw版本3.2.1情况1Intel HD Graphics 4000软件内查到版本:10.18.10.4252官网名称:15.33.47.5059nVidia GeForce 625M版本391.35结果:Intel显卡下可以正常调试,打开。nVidia下调试卡在wglMakeCurrent(NULL,NULL)一句,即...

2019-03-10 15:09:47 856

原创 leetcode 996 正方形数组的数目 简明解法

.996. 正方形数组的数目给定一个非负整数数组 A,如果该数组每对相邻元素之和是一个完全平方数,则称这一数组为正方形数组。.返回 A 的正方形排列的数目。两个排列 A1 和 A2 不同的充要条件是存在某个索引 i,使得 A1[i] != A2[i]。示例 1:输入:[1,17,8]输出:2解释:[1,8,17] 和 [17,8,1] 都是有效的排列。示例 2:输入:...

2019-02-17 21:46:05 1069

原创 leetcode 974. 和可被 K 整除的子数组 详解

给定一个整数数组 A,返回其中元素之和可被 K 整除的(连续、非空)子数组的数目。示例:输入:A = [4,5,0,-2,-3,1], K = 5输出:7解释:有 7 个子数组满足其元素之和可被 K = 5 整除:[4, 5, 0, -2, -3, 1], [5], [5, 0], [5, 0, -2, -3], [0], [0, -2, -3], [-2, -3]提示:1 ...

2019-01-20 00:25:14 2227 1

原创 leetcode 966. 元音拼写检查器 map解法

在给定单词列表 wordlist 的情况下,我们希望实现一个拼写检查器,将查询单词转换为正确的单词。对于给定的查询单词 query,拼写检查器将会处理两类拼写错误:大小写:如果查询匹配单词列表中的某个单词(不区分大小写),则返回的正确单词与单词列表中的大小写相同。例如:wordlist =[“yellow”], query = “YellOw”: correct = “yellow”...

2018-12-30 15:14:54 382

原创 Win32 API非混音播放声音函数

1.PlaySoundWin32 API 播放声音最简单的就是PlaySound函数了。播放文件:PlaySound("deal.wav",NULL,SND_FILENAME | SND_ASYNC);播放资源:PlaySound((LPCSTR)IDR_WAVE_DEAL, GetModuleHandle(NULL), SND_RESOURCE | SND_ASYNC);其中SN...

2018-12-05 19:13:23 848

原创 在VS中给源文件用文件夹分类/在VS中变更源文件路径

最近把我的项目传到了GitHub,但是因为源文件都是直接在VS中新建的,VS又把所有文件都新建在了同一个目录下,所有文件堆在一起又乱又丑。但是又不能在资源管理器的文件夹里直接移,这样VS找不到文件又要报错。虽然可以手动修改vcxproj文件,但是也太麻烦了。解决方法其实很简单:在解决方案资源管理器里,上面一排有一个“显示所有文件”的按钮,选中后所有文件以实际目录显示,之后直接移动文件即可。...

2018-11-06 22:03:15 7407

原创 VS2013编译能在WinXP运行的ATL程序

VS2013编译ATL程序在WinXP上运行的设置和SDK程序差不多。总结一下吧。配置属性 - 平台工具集:要设置成 Visual Studio 2013 - Windows XP (v120_xp),否则报“不是正确的Win32程序”。C/C++ - 运行库:要设置成 多线程(/MT),设置成 **多线程调试(/MTd)**也可以,但因为带了调试信息,文件要大得多。别的带dll的选项需要...

2018-10-05 22:08:56 332

原创 记leetcode中提高运行速度的奇技淫巧与其计时不准确性

在看leetcode中别人的代码时,发现了一段奇怪的东西:static auto x = []() { std::ios::sync_with_stdio(false); std::cin.tie(0); return 0;}();这是什么玩意儿? 里面sync那句是解除cin与stdin的同步,加快读入数据的。tie(0)那句是解除cin与cout的绑定,...

2018-08-10 00:58:24 4135

原创 C++ STL求全排列和组合

C++11 STL内置了求全排列的模板函数next_permutation和prev_permutation,属于头文件和std命名空间,使用非常方便。例如:vector&amp;lt;int&amp;gt; A{1,2,3,4,5};while (next_permutation(A.begin(),A.end()){ cout&amp;lt;&amp;lt;A[0]&amp;lt;&amp;lt;A[1]&amp;lt;&a

2018-07-20 16:00:12 6566

原创 RadASM资源链接错误RC2104及找不到resource.h解决方案

罗云彬的《Windows环境下32位汇编语言程序设计(琢石成器第3版)》确实是本好书,讲解生动,深入浅出,具备可操作性。现在的书尤其是教材抄来抄去,自己都没试过就copy到书里面,像罗云彬这么实操的书太难得了。 书里提供了makefile编译方法,简便易行,我在Win10 x64上一次成功。这也证明了windows强悍的向下兼容性。不过命令行编译始终没有用IDE爽。用RadASM新建工程,文...

2018-06-12 00:35:59 922

原创 Win10 x64+VS2013编译OpenGL程序用于WinXP系统运行方法——以库GLFW 3.2.1中gears为例

我最近玩OpenGL探索有得,以飨大家。GLFW是一个用于OpenGL编程的C语言库,可下载或自行用源码编译出glfw3.lib。怎样编译出能在WinXP系统运行的OpenGL程序?下面以GLFW库中自带的例子gears为例: 打开Release配置或者MinSizeRel,我这里是MinSizeRel。设置平台工具集。 设置运行库。 这里要从/MD改成/MT,区别在...

2018-06-12 00:29:55 657 1

原创 C++类内static指针报错“无法解析的外部符号”解决方法

今天在看《大话设计模式》,实践里面的单例模式。写了如下代码:#include &amp;lt;iostream&amp;gt;using namespace std;class Single;class Single{private: Single(){} static Single *inst;public: Single::~Single(); Single*...

2018-03-28 22:56:40 3670 3

原创 Solidworks编辑零件卡死解决方案

今天弄一个模型,能够打开,但随便编辑任何特征都会卡死,加新的特征也会卡死。但其他零件就没事。首先想到显卡,切换到独显进入程序,还是卡死。 之后想到Solidworks刚装的2017版,之前零件是2014版做的,保存时还更新了版本,想着要不退回旧版试试。结果SW根本就没有选项!搜索一圈,发现说法都是转中间格式再导入,稍微靠谱点的就是转Parasolid,说这样能保留特征树(没亲自试过)。之后找到希腊

2017-12-06 17:27:14 46427 13

原创 RadASM资源链接错误RC2104及找不到resource.h解决方案

罗云彬的《Windows环境下32位汇编语言程序设计(琢石成器第3版)》确实是本好书,讲解生动,深入浅出,具备可操作性。现在的书尤其是教材抄来抄去,自己都没试过就copy到书里面,像罗云彬这么实操的书太难得了。 书里提供了makefile编译方法,简便易行,我在Win10 x64上一次成功。这也证明了windows强悍的向下兼容性。不过命令行编译始终没有用IDE爽。用RadASM新建工程,文件夹选

2017-11-26 22:23:13 704

原创 用WM_PAINT解决ListView控件嵌入Edit显示不正常的问题

ListView自带有编辑功能,创建窗口时加上一个style code就可以。但它的编辑功能只能编辑每行第一个元素。所以只能把Edit控件嵌入到ListView里。这里有两个办法,1是捕捉单击、双击动作,根据点击位置动态显示一个Edit Control。2是直接在每行都设置一个Edit,动态控制各个Edit的位置及其显隐。我参考了CustomListCtrlDemo,也是把控件嵌入ListView中

2016-11-11 17:04:41 388

原创 通过控件子类化实现Edit Control接收Enter按键

众所周知,Win SDK的标准Edit控件要接收Enter键只能在样式里增加一个“多行”,如果保持单行还想接收Enter键呢?MSDN指出了3个方法: 1是在父窗口的WM_COMMAND中处理。2是通过为控件注册回调函数实现。3是通过MFC类重载函数实现。 第1个方法我试了不知道为什么拦截不到Enter按键。 第2个方法在StackoverFlow上有解决方案:WNDPROC oldEditP

2016-10-30 14:59:26 822

School Days HQ GPK文件解包工具

GPKExp Ver0.06 图形界面,可以解包School Days HQ的GPK文件。需要.net Framework支持运行。

2018-10-07

C+winAPI编写的2048游戏带源码

1.图形界面 2.可以存档 3.保存排行榜 4.可以随机开局 5.可以撤销

2016-09-20

圆孔拉刀三维参数化设计系统

1.1 系统简介 圆孔拉刀三维参数化设计系统用于圆孔拉刀(目前只支持分层式圆孔拉刀)各参数的设计、选定,可以将设计结果进行保存/打开,并且通过拉刀设计参数生成CATIA三维模型。 1.2 系统要求 操作系统:Windows XP,Windows 7操作系统。 软件安装:CATIA V5R16及以上。 CPU:Intel Pentium 566MHz 以上。 内存:128M内存。 硬盘:至少10M空余硬盘空间。 键盘:需要。 鼠标:需要。 1.3 系统特性 1. 手工设计方式与自动推理设计的兼容。您可以先使用程序进行自动推理,再对推理结果进行微调。 2. 包含了所有参数的拉刀参数文件(后缀.DAT)。您可以将设计结果进行保存/打开,随时可以中断设计,也可以将以前的设计结果修改后再生成新的拉刀模型。

2016-09-01

精简ProE生成的Wrl文件并合并Shape节点程序

精简ProE生成的Wrl文件并合并Shape节点 Author: Tom Willow E-mail: [email protected] -说明:Pro/E生成的wrl含有较多冗余信息,且各个面被拆分到多个Shape中,赋予材质需要逐面操作,十分繁琐。故编写本程序。 精简完成后,所有多余节点及嵌套关系都会消失,并将所有面合并到一个Shape节点上。 -使用方法:拖动wrl文件到本exe程序图标即可。

2016-05-18

解决ArtCAM2008在Win7下因为缩略图问题无法打开或导入文件的问题

我们在使用ArtCAM2008时,经常会遇到文件无法打开的问题。具体表现为,保存得好好的文件,关闭后就再也打不开了,不仅打不开,连同一个文件夹的图片缩略图也不正常,文件夹地址栏一直闪动读取文件的进度条,art文件移也移不动,删也删不了。其实,这是因为Win7的缩略图和art文件缩略图插件不兼容引起的。 有人说是文件路径,文件名等必须为英文,并且不能放置在C盘及桌面等;也有人采取了安装Unlocker,每次打开art文件前都右键该文件 - Unlocker - 全部解锁 的办法来解决问题。但笔者还是觉得麻烦,于是使用Autoruns,进入explorer页,发现了ArtCAM其实是通过注册表的一个键值调用C:\Program Files\ArtCAM 2008\ShellExtension\ArtCAMShellEx.dll文件进行缩略图的显示。删除该键值后,问题解决。并且发现,解决该问题后,打开art文件并不受C盘路径/中文路径/中文文件名的影响,可任意命名及放置。

2013-02-18

缺少解码器VP70解决办法 By TomWillow

缺少解码器VP70问题其实是缺少vp7vfw.dll文件或其注册引起的,该批处理可以自动解决此问题。 若运行后未能解决问题,可尝试手动操作。 1.复制vp7vfw.dll至C:\windows\system32 2.将 注册音频解码器VP70.reg 双击导入注册表。 By Tom Willow Email:[email protected]

2012-12-04

双击运行Class文件批处理v1.0 ByTomWillow

双击运行class文件批处理v1.0 要求:已安装jdk(Java开发包,Java Development Kit)。 功能: 1.自动搜索jdk安装路径,并设置环境变量。 2.添加class文件打开方式(由笃行天下编写 http://hi.baidu.com/duxing)。 附带一个HelloWorld.class文件以供测试。 By Tom Willow E-mail:[email protected]

2012-12-04

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除