title: Deliver command-line tool via NuGet for use in post-build events in Visual Studio
body: <p>I've developed a command-line utility that takes .NET assemblies as input and generates XML as output for use by another product.</p>
  
  <p>Ideally I'd have it:</p>
  
  <ul>
  <li>Delivered via NuGet as a solution-level package</li>
  <li>Accessible in post-build events at the project level</li>
  <li><strong>Bit where I'm stuck:</strong> Accessible in that post-build event just by specifying the command name without path
  <ul>
  <li>i.e. <em>MyTool.exe /i $(TargetPath)</em> as opposed to <em>..\packages\ToolName-1.0.0.0\tools\MyTool.exe /i $(TargetPath)</em></li>
  </ul></li>
  </ul>
  
  <p>The first two things I can already do, and a post-build event command as above works just fine but only if I first open the Package Manager Console (even if I don't type any commands, just have to open it) - seemingly it's doing something cool with paths when it fires up so that I don't have to specify the ..\packages\ToolName-1.0.0.0\tools\MyTool.exe.</p>
  
  <p>Is it possible for my NuGet package to use an Init.ps1 script (or some other mechanism) to adjust paths so that I needn't specify the full relative path to the tool when writing a post-build event, or to otherwise include run tool as a post-build step automatically?</p>
  
  <p><em>Note</em> - I accept NuGet mightn't be the ideal vector for delivering this sort of tool, but it would be convenient.</p>