MBulli / SmartCommandlineArgs

A Visual Studio Extension which aims to provide a better UI to manage your command line arguments
GNU General Public License v2.0
99 stars 35 forks source link

Not compatible with Oasis NX (Switch) which uses "Remote Command Arguments" #143

Closed sorenr closed 1 year ago

sorenr commented 1 year ago

First, thanks for an excellent extension. I use Smart Command Line Arguments every day and find it invaluable.

Smart Command Line Arguments works great for developing on PC, Xbox, and Playstation but not in the "Oasis NX" (Switch) environment.

The issue might be that Smart Command Line Arguments sets "Command Arguments": image

... whereas Oasis NX requires "Remote Command Arguments": image

This might work with a configurable variable designating the name of the debugging field to set.

Irame commented 1 year ago

Hi, tanks for the kind words. I didn't find any place to download "Oasis NX", so I couldn't look myself.

Could you please enable logs and then try to set the command line arguments with the extension and attach the log file.

I would also need the *.user file it should look something like this:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <LocalDebuggerCommandArguments>Test</LocalDebuggerCommandArguments>
    <RemoteDebuggerCommandArguments>Test</RemoteDebuggerCommandArguments>
  </PropertyGroup>
</Project>

The relevant part is the tag that encloses the arguments.

sorenr commented 1 year ago

I've enabled logs and I have a logfile. Are there particular lines that I can send you? This is for a proprietary, high exposure project and I'd rather not upload a whole logfile with special flags and other general interest keywords to a searchable public website.

Here's a *.user file which is very similar to the one I'm using:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|NX64'">
    <LocalDebuggerCommandArguments>+server redacted -foo -bar</LocalDebuggerCommandArguments>
    <NXTargetSerialNumber>XAL0REDACTED00</NXTargetSerialNumber>
    <NXTargetName>Default</NXTargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|NX64'">
    <NXTargetName>Default</NXTargetName>
    <LocalDebuggerCommandArguments>-notimeout +comms_newchatserver 0</LocalDebuggerCommandArguments>
    <NXTargetSerialNumber>XAL0REDACTED00</NXTargetSerialNumber>
    <RemoteDebuggerCommandArguments>-software redacted +environment redacted -foo -bar</RemoteDebuggerCommandArguments>
    <DebuggerFlavor>OasisNXDebugger</DebuggerFlavor>
  </PropertyGroup>
</Project>
Irame commented 1 year ago

I am sorry, I was mistaken. We don't need the Log file. It seems the *.user file has everything we need. I will create a test version for you some time this evening. Which Visual Studio version are you using?

sorenr commented 1 year ago

We're currently using Visual Studio 2019.

Irame commented 1 year ago

Here is the test version: SmartCmdArgs-2019-v2.3.2-test.vsix.zip (had to zip it because GitHub doesn't like *.vsix files)

sorenr commented 1 year ago

Confirmed! The above version lets me launch to a devkit with configurable arguments.