小编Tom*_*don的帖子

在Visual Studio中重命名某些内容时,如何查看"无法解决的冲突"?

我正在尝试在Visual Studio 2015中重命名一个C#命名空间,过了一会儿Visual Studio帮助(?)告诉我有216个无法解决的冲突.

但这是它似乎提供的所有信息.

我怎么能看到这些冲突到底是什么?

预览按钮没有显示任何明显的内容.

c# refactoring rename visual-studio-2015

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

我应该如何清理launchdutput或StandardError日志?

我有一个作为launchd代理运行的程序,我有stdout和stderr使用StandardErrorPathStandardOutputPath键发送到日志文件.我非常热衷于将stdout/stderr记录在某个地方,而且看起来像启动它设置这将是明智的事情.

(我的目的是建议一个文件~/Library/Logs/作为一个好的设置.然后你可以很容易地看到Console.app中的输出.)

我注意到的一点是,launchd似乎永远不会清理这些日志!我希望它可以在每次重启时清除日志,或者每隔几天,或者其他什么东西 - 但似乎没有.几周后,我有一个7MByte的22,000行日志文件,几乎没有一个是相关的.(你不太关心在上次重启之前发生的任何事情,事实上你不太可能关心过去15分钟内没有发生的事情.)

我能做些什么来阻止文件无限增长吗?

macos logging diskspace launchd

8
推荐指数
0
解决办法
405
查看次数

如何使用gdb调试使用yasm汇编的代码?

我已经使用yasm进行代码汇编,并链接到我的C++程序,但是我无法在汇编语言文件中的符号上设置gdb中的断点.

命令行可能不是非常有启发性,但我们在这里:

"g++"  -ftemplate-depth-128 -O0 -fno-inline -Wall -g -fPIC -std=c++11   -I"$HOME/usr/include" -c -o "bin/gcc-4.7/debug/main.o" "main.cpp"
yasm -g dwarf2 -f elf64 -o bin/gcc-4.7/debug/mandel.o mandel.yasm
"g++" -L"$HOME/usr/lib" -Wl,-R -Wl,"$HOME/usr/lib" -Wl,-rpath-link -Wl,"$HOME/usr/lib" -o "bin/gcc-4.7/debug/mandel" -Wl,--start-group "bin/gcc-4.7/debug/main.o" "bin/gcc-4.7/debug/mandel.o"  -Wl,-Bstatic  -Wl,-Bdynamic -lboost_system -lboost_thread -Wl,--end-group -g 
Run Code Online (Sandbox Code Playgroud)

所有构建都没有发生任何事故,程序运行.但是当我尝试将其加载到gdb中进行调试时,我似乎无法在yasm文件中的任何函数上添加断点.例如,我在那里有一个名为MandelRect的函数.这是gdb显示我在哪里调用它,在main中的某个地方:

(gdb) disassemble 0x404ada,0x404af0
Dump of assembler code from 0x404ada to 0x404af0:
   0x0000000000404ada <main()+474>:     mov    %rax,%rdi
   0x0000000000404add <main()+477>:     callq  0x409980 <MandelRect>
   0x0000000000404ae2 <main()+482>:     movq   $0x0,-0x18(%rbp)
   0x0000000000404aea <main()+490>:     jmp    0x404b1c <main()+540>
   0x0000000000404aec <main()+492>:     mov    -0x18(%rbp),%rdx
End of assembler dump.
Run Code Online (Sandbox Code Playgroud)

这是gdb告诉我它的地址是什么:

(gdb) …
Run Code Online (Sandbox Code Playgroud)

c++ linux gdb dwarf yasm

7
推荐指数
1
解决办法
487
查看次数

我可以在WebStorm中禁用代码折叠吗?

我想在WebStorm中禁用代码折叠.可以关闭折叠指示器,但折叠本身仍然有效.我想摆脱整个事情,所以不可能以任何方式激活它.这可能吗?

(没有任何明显的选择,但我希望有一些我错过的东西......)

folding webstorm

7
推荐指数
1
解决办法
1091
查看次数

刷新页面后将焦点设置在网页上而不是 Firefox 调试器上

我正在使用默认的 Firefox Web 开发人员工具。火狐浏览器 20.0、Mac OS X 10.7。

如果我打开开发人员工具的调试器面板(但未聚焦),并刷新页面,焦点将转到调试器面板而不是刷新的页面。我可以将焦点设置为转到刷新的页面吗?

如果我打开 Web 控制台面板,这不会抢走焦点 - 理想情况下,我想让调试器以相同的方式运行。

我的程序使用文档keyupkeydown事件,并且页面需要焦点才能使它们工作。每次都必须单击页面,这令人惊讶地烦人(这只是一件小事,但它使每次刷新所需的工作量加倍!)。

javascript firefox dom-events firefox-developer-tools

5
推荐指数
1
解决办法
1009
查看次数

在 Windows 7 上使用 XAudio2 构建

我正在尝试使用以下说明来构建一些使用 XAudio2 并在 Windows 7 上运行的代码:

http://msdn.microsoft.com/en-us/library/windows/desktop/ee663275%28v=vs.85%29.aspx

按照建议,我包含 DirectX SDK 中的 XAudio2.h:

#include <%DXSDK_DIR%Include\xaudio2.h>
Run Code Online (Sandbox Code Playgroud)

结果:

fatal error C1083: Cannot open include file: '%DXSDK_DIR%Include\xaudio2.h': No such file or directory
Run Code Online (Sandbox Code Playgroud)

那好吧。我很确定 VC++ 并没有像那样扩展环境变量。所以我#include用一个直接包含它的替换了它:

#include <C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include/XAudio2.h>
Run Code Online (Sandbox Code Playgroud)

(其他一些说明,也建议使用完整路径,可以在这里找到:http : //blogs.msdn.com/b/chuckw/archive/2012/04/02/xaudio2-and-windows-8-consumer-预览.aspx

结果:

c:\program files (x86)\microsoft directx sdk (june 2010)\include\xaudio2.h(20): fatal error C1083: Cannot open include file: 'comdecl.h': No such file or directory
Run Code Online (Sandbox Code Playgroud)

果然,该文件包括comdecl.h使用尖括号,指示 VC++ 查看当前文件夹之外。

我将 DirectX SDK 包含文件夹 ( $(DXSDK_DIR)/include) 添加到项目 …

windows directx xaudio2 windows-7 visual-studio-2012

5
推荐指数
1
解决办法
6181
查看次数

我可以让cmake始终生成调试符号吗?

我希望cmake在我的Release版本中生成符号.

我知道我可以生成RelWithDebInfo构建,并在那些中获取符号,但我也想在Release版本中使用符号.我从不想要没有符号的构建.

我可以这样做吗?

c++ symbols cmake debug-symbols

5
推荐指数
2
解决办法
6226
查看次数

我可以将git子模块与某种回退网址链接吗?如果SSH克隆失败,git应该能够使用https进行克隆

(这是我在使用github时出现的问题,所以如果任何解决方案都是特定于github的话,我不介意太多.但问题本身并不是特定于github的,并且任何解决方案都不一定是无论是.)

您始终可以使用https克隆公共github存储库.

git clone https://github.com/my-user-name/SDL-mirror/
Run Code Online (Sandbox Code Playgroud)

如果你有一个github知道的SSH密钥,你也可以使用SSH克隆它.

git clone git@github.com:my-user-name/SDL-mirror.git
Run Code Online (Sandbox Code Playgroud)

(我认为使用bitbucket时类似的选项也适用.)

添加子模块时也有这两个选项.

添加子模块时,您通常会添加SSH版本,因此您可以在原位测试更改后直接从子模块提交.

但是人们试图克隆你的回购呢?他们可能没有对github的SSH访问权限.因此,他们将使用https URL克隆您的存储库...然后当git尝试使用SSH URL克隆子模块时,它会松开.

如果您使用git repo进行系统配置,这也可能是一个问题.

理想情况下,如果可能的话,我希望git从SSH URL中提取,如果不是,我希望使用https URL.这应该让每个人都可以开箱即用.有什么方法可以让它做到这一点?

git ssh https clone github

5
推荐指数
1
解决办法
398
查看次数

如何确定 Windows Media Foundation 接收器编写器是需要自下而上还是自上而下的图像?

我正在使用 Windows Media Foundation 创建视频文件。我有一些基于使用接收器编写器编码视频教程的代码。

当输入类型为MFVideoFormat_RGB32,输出类型为MFVideoFormat_WMV3,并且接收器编写器正在写入 WMV 文件,并且我为接收器编写器提供自上而下的 RGB32 数据时,我得到了我期望的视频。

MFVideoFormat_H264另一方面,当输出类型为 时- 其他一切都相同 - 位图会颠倒过来。

如何在运行时找出需要哪种位图数据?

video rgb ms-media-foundation

5
推荐指数
1
解决办法
386
查看次数

如何正确避免 avformat_new_stream 中的 avcodec_alloc_context3 泄漏?

这个令人发狂的线程描述了我遇到的问题:由于在关闭时分配了一些东西而导致内存泄漏avformat_new_stream描述了我遇到的问题:由于调用

这是泄漏的 valgrind 堆栈跟踪:

  • 1 个块中的 1,447 个(1,440 个直接,7 个间接)字节肯定会在丢失记录 2 of 4 中丢失
  • 在 0x4C2FFC6:memalign(在 /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so 中)
  • 通过 0x4C300D1:posix_memalign(在 /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so 中)
  • 通过 0x690DEFF:av_malloc(mem.c:87 )
  • 通过 0x690E09D:av_mallocz(mem.c:224
  • 通过 0x533D28A: init_context_defaults ( options.c:128 )
  • 通过 0x533D325:avcodec_alloc_context3(选项.c:164 )
  • 通过 0x663D09E:avformat_new_stream(utils.c:4384
  • 通过 0x4204B6:主要(test_ffmpeg.cpp:918)

很明显,问题是当一个AVFormatContext流的编解码器上下文priv_data字段因某种原因未被释放时。

我的代码释放了AVFormatContextwith avformat_free_context. 这调用ff_free_stream,它调用free_stream,它释放流的一些编解码器上下文字段本身 - 但不是priv_data

与中对应代码进行对比对比avcodec_close

线程中建议的问题解决方案:“在调用之前先关闭编解码器av_format_free_context”。大概这是指调用avcodec_free_context?- 但我已经在这样做了!大致遵循复用示例中的结构,我有一个由我的代码创建的编码器上下文,用于跟踪未压缩的输入数据。然后还有另一个由 …

c linux ffmpeg

5
推荐指数
1
解决办法
2369
查看次数

如何使用 cmake 来测试预期会因异常而失败的进程?(例如,由于 clang 的地址清理导致的失败)

我有一些测试来测试 clang 的地址清理器捕获特定错误。(我想确保我对它可以捕获的错误类型的理解是正确的,并且未来的版本会继续捕获我期望它们捕获的错误类型。)这意味着我有几个测试失败了OTHER_FAULT,这似乎是 clang 运行时报告错误的固定方式。

我已经为这些测试设置了WILL_FAIL标志TRUE,但这似乎只是检查成功、无异常失败的返回值。如果进程因异常终止,cmake 仍将其归类为失败。

我还尝试使用PASS_REGULAR_EXPRESSION来观察发生此错误时打印出的区分消息,但同样,如果测试以异常终止,cmake 似乎将测试归类为失败。

我能做些什么来解决这个问题吗?

(特定于 clang 的答案也是一种选择!-但我怀疑这将是我最后一次需要测试这样的东西,所以如果可能的话,我更愿意知道如何使用 cmake 进行测试)

automated-tests cmake clang address-sanitizer

4
推荐指数
1
解决办法
1522
查看次数

如何在Visual Studio 2015输出窗口中停止包装C#编译器输出?

当我使用默认编译器在Visual Studio 2015中构建我的C#代码时(项目没什么异常),我在输出窗口中得到输出,看起来有点像这样.(实际宽度不具代表性,因为我用相当长的路径替换了XXX.)

1>XXX(402,13,402,16): error CS1955: Non-invocable member 'Lo 1>g' cannot be used like a method. 1>XXX(424,25,424,28): error CS1955: Non-invocable member 'Lo 1>g' cannot be used like a method.

据推测,编译器正在打印Non-invocable member 'Log' cannot be used like a method,某些地方正在插入并弹出换行符(在实践中的第120列 - 如上所述,我的示例输出中的列计数不具代表性).

我可以阻止这个吗?如果是这样,怎么样?

我更喜欢在自然位置使用换行符打印消息,因此我可以使用输出窗口的自动换行功能.

c# word-wrap visual-studio-2015

4
推荐指数
1
解决办法
443
查看次数