相关疑难解决方法(0)

在Visual Studio中以特定的行号打开文件

我有一个实用程序(grep),它给我一个文件名和行号列表.在我确定devenv是打开文件的正确程序之后,我想确保它在指定的行号处打开.在emacs中,这将是:

emacs +140 filename.c
Run Code Online (Sandbox Code Playgroud)

我发现Visual Studio(devenv)没有这样的东西.我找到的最接近的是:

devenv /Command "Edit.Goto 140" filename.c
Run Code Online (Sandbox Code Playgroud)

但是,这会为每个此类文件创建一个单独的devenv实例.我宁愿有一些使用现有实例的东西.

这些变体重复使用现有的devenv,但不会转到指定的行:

devenv /Command "Edit.Goto 140" /Edit filename.c
devenv /Command  /Edit filename.c "Edit.Goto 140"
Run Code Online (Sandbox Code Playgroud)

我认为使用多个"/ Command"参数可能会这样做,但我可能没有正确的参数因为我得到错误或根本没有响应(除了打开一个空的devenv).

我可以为devenv编写一个特殊的宏,但我希望这个实用程序可以被没有该宏的其他人使用.而且我不清楚如何使用"/ Command"选项调用该宏.

有任何想法吗?


好吧,似乎没有办法按我的意愿去做.由于看起来我需要有专门的代码来启动Visual Studio,所以我决定使用EnvDTE,如下所示.希望这会有助于其他人.

#include "stdafx.h"

//-----------------------------------------------------------------------
// This code is blatently stolen from http://benbuck.com/archives/13
//
// This is from the blog of somebody called "BenBuck" for which there
// seems to be no information.
//-----------------------------------------------------------------------

// import EnvDTE
#pragma warning(disable : 4278)
#pragma warning(disable : 4146)
#import "libid:80cc9f66-e7d8-4ddd-85b6-d9e6cd0e93e2" version("8.0") lcid("0") raw_interfaces_only …
Run Code Online (Sandbox Code Playgroud)

command-line visual-studio

55
推荐指数
4
解决办法
2万
查看次数

标签 统计

command-line ×1

visual-studio ×1