小编Syn*_*ech的帖子

如何验证批处理文件中是否存在文件?

我必须创建一个.BAT执行此操作的文件:

  1. 如果C:\myprogram\sync\data.handler存在,退出;
  2. 如果C:\myprogram\html\data.sql不存在,退出;
  3. C:\myprogram\sync\删除除(test,test3test2)之外的所有文件和文件夹
  4. 复制C:\myprogram\html\data.sqlC:\myprogram\sync\
  5. 使用选项调用其他批处理文件sync.bat myprogram.ini.

如果它在Bash环境中对我来说很容易,但我不知道如何测试文件或文件夹是否存在以及它是文件还是文件夹.

windows cmd batch-file

176
推荐指数
3
解决办法
39万
查看次数

在GraphViz中制作图例/关键字

我想在GraphViz图表中包含图例或关键字.但是,我无法确定要使用的代码.我也想把它放在一个角落,但我唯一知道的唯一的坐标是左下角:pos="10,10!".

有谁知道我怎么能让这个工作?

legend graphviz

62
推荐指数
4
解决办法
3万
查看次数

'%p`在哪里对printf有用?

毕竟,这两个陈述都做同样的事情......

int a = 10;
int *b = &a;
printf("%p\n",b);
printf("%08X\n",b);
Run Code Online (Sandbox Code Playgroud)

例如(具有不同的地址):

0012FEE0
0012FEE0
Run Code Online (Sandbox Code Playgroud)

根据需要格式化指针是微不足道的%x,那么是否有一些很好的%p选择?

c c++ printf

57
推荐指数
4
解决办法
11万
查看次数

在构建期间将Visual Studio项目文件复制到输出目录

当我构建Visual Studio项目时,可执行文件将写入项目属性页中指定的输出目录.

我有一个项目,其中包含程序使用的一些额外文件(例如,.ini文件).

如何配置项目以将文件复制到输出目录,以便在程序运行时,它的CWD中有另一个文件的副本?

我检查了文件的属性页,除了从构建中排除它(禁用)的选项之外没有任何其他用处,并且custom-build-tool命令为空(加上它是一个纯文本文件,不需要任何处理).

visual-studio-2003 projects-and-solutions build visual-studio

36
推荐指数
5
解决办法
7万
查看次数

CString到char*

我们在大多数代码中都使用CString类.但有时我们需要转换为char*.目前我们一直在使用variable.GetBuffer(0)这样做,这似乎有效(这主要发生在将Csting传递给函数需要char*的函数中).该功能接受了这一点,我们继续前进.

然而,我们最近担心这是如何工作的,以及是否有更好的方法来做到这一点.

我理解它的工作方式是它将一个char指针传递给指向CString中第一个字符的函数,并且一切正常.

我猜我们只是担心内存泄漏或任何不可预知的情况,这可能不是一个好主意.

c++ mfc memory-leaks cstring

17
推荐指数
2
解决办法
3万
查看次数

为数字指定最大printf字段宽度(必要时截断)?

您可以使用printf字段宽度说明符截断字符串:

printf("%.5s", "abcdefgh");

> abcde
Run Code Online (Sandbox Code Playgroud)

遗憾的是它不换号(更换工作dx是一样的):

printf("%2d",   1234);  // for 34
printf("%.2d",  1234);  // for 34
printf("%-2d",  1234);  // for 12
printf("%-.2d", 1234);  // for 12

> 1234
Run Code Online (Sandbox Code Playgroud)

是否有一种简单/平凡的方式来指定要打印的位数,即使它意味着截断数字?

MSDN明确表示不会发生这种不必要的限制.(是的,它可以通过创建字符串等来完成,但我希望有一个"printf技巧"或聪明的kludge.)

printf truncate format-specifiers

17
推荐指数
2
解决办法
3万
查看次数

Microsoft符号服务器/本地缓存哈希算法

我试图弄清楚什么散列算法用于Microsoft符号本地缓存目录.

例如,本地缓存可以是如下所示

  L:\Symbols
      \browseui.dll
        \44FBC679fe000
          browsue.dll
      \browseui.pdb
        \44F402F62
          browseui.pdb
      \explorer.exe
        \3EBF1F14f7000
          explorer.exe
      \explorer.pdb
        \3EBF1F141
          explorer.pdb
      \msvcr71.pdb
        \60D915C6AB6A4F3586E9096E2F8856482
          msvcr71.pdb

文件与其调试数据库之间似乎存在某种对应关系.除此之外,我无法弄清楚如何生成这些(可能)十六进制字符串文件夹的名称.

其中一些是9位数,大约13位数,其他是33位数.它看起来像一个实际的实时文件(由于某种原因存储在符号缓存中)具有13位哈希,而其(几乎相似)调试数据库获得9位哈希.一些调试数据库获得13位哈希值; 虽然他们没有相应的实时文件,却无法弄清楚是什么让这些特殊.

我已经尝试使用我所知道的各种哈希算法(其中39个)对文件进行哈希处理,并且没有任何匹配(直接向上,反向,备用字节序等)

有任何想法吗?

更新 我想我终于找到了它.来自符号存储格式:

SymStore将文件系统本身用作数据库.它创建了一个大型目录树,其目录名称基于符号文件时间戳,签名,年龄和其他数据.

编辑 Dang,不幸的是它只提到目录名是从各个方面派生的(我猜不是很好的哈希),但并没有提到具体如何.搜索继续...... :-(

hash symbol-server symstore

11
推荐指数
1
解决办法
3424
查看次数

确定窗口是否具有任务栏按钮

我正在寻找一种方法来检查给定窗口是否有任务栏按钮.也就是说,给定窗口的句柄,如果窗口在任务栏中,我需要为TRUE,否则为FALSE.

相反,我想知道是否有办法获得属于给定任务栏按钮的窗口的句柄,我想这需要一种方法来枚举任务栏按钮.

(第一个前者是我需要的部分,后者是可选的.)

非常感谢.

windows taskbar

9
推荐指数
2
解决办法
2122
查看次数

是否有Windows API以编程方式通过Windows资源管理器剪切/复制/粘贴文件?

我知道SHFileOperation可用于使用Windows资源管理器执行文件操作,但它只执行源和目标都已知的完整文件操作.

是否有API允许应用程序在Windows资源管理器中从应用程序中剪切,复制或粘贴?

回答几个问题:

  • 使用Windows资源管理器执行文件/文件夹操作将大大简化移动多个对象.这对于移动文件夹及其内容尤其重要,因为MoveFile不支持将文件夹移动到不同的卷.

  • 使用Windows资源管理器执行文件/文件夹操作将允许将操作添加到Windows资源管理器的撤消缓冲区,以便可以撤消它们,否则无法撤消使用控制台应用程序/命令提示符执行的操作.

我确信我已经看到以编程方式执行Windows资源管理器动词,但我似乎无法找到这样做的方法.

windows clipboard file-io windows-explorer

9
推荐指数
1
解决办法
5540
查看次数

列出IIS上命令行中的所有托管网站

我们如何从IIS上的命令行列出所有托管网站?

windows iis command-line

9
推荐指数
2
解决办法
1万
查看次数