Home

Linqpad can't differentiate between x86 and AnyCPU version when launching

1. Launch Linqpad(AnyCpu)

2. From command line try to open a .linq script in the x86 version:
@C:\Program Files (x86)\LINQPad5\LINQPad.exe "C:\Dropbox\LinqpadShared\LINQPad Queries\TextManipulation\PowerText52.linq"

3. The file opens in the existing LinqPad(AnyCpu) instance. It seems to open in whatever instance was launched first.

This is a problem since Linqpad can't run scripts that reference x64 dlls from the x86 instance and vice-versa. So I have some scripts that need to open in one instance, and some that need to open in the other.

Comments

  • You can force a new instance with the -newinstance flag. Would this help?
  • It is somewhat helpful. But my usage scenario is that I write out a file with some dynamic code in it and I want to open it in the x86 instance. I can't launch the file in that instance, it will open in whichever linqpad was launched first. So it will work fine as long as I make sure the x86 instance is launched before the x64 one ( which is tricky to try to remember and keep track of )
  • Try the new beta - it will preference the instance that matches the path that you specify when there are multiple instances open.
  • Looks good. It also seems to work even when there is only one instance open and you specify to launch the other instance (without a filename).

    The only scenario I found that doesn't work as expected is:

    1. Launch AnyCPU linqpad.
    2. Try to launch x86 linqpad with a filename when x86 is not open yet. It will open the file in the already open AnyCPU one.

    I'm guessing if you reverse x86 and AnyCPU it would be the same problem.

    This is not a big deal at all, I can work around that, and I appreciate what you have done. Just letting you know, in case you are interested.
Sign In or Register to comment.