QB64 Phoenix Edition
Detect running from IDE - Printable Version

+- QB64 Phoenix Edition (https://qb64phoenix.com/forum)
+-- Forum: QB64 Rising (https://qb64phoenix.com/forum/forumdisplay.php?fid=1)
+--- Forum: Code and Stuff (https://qb64phoenix.com/forum/forumdisplay.php?fid=3)
+---- Forum: Help Me! (https://qb64phoenix.com/forum/forumdisplay.php?fid=10)
+---- Thread: Detect running from IDE (/showthread.php?tid=2441)



Detect running from IDE - mdijkens - 02-11-2024

I regularly want to know if I'm running from the IDE (during development) or not.
To set the current working directory correct or to stop with End instead of System
etc.

I now use this code which seems to work for some time already:

Code: (Select All)
Dim Shared DEVELOPMENT As _Byte
$If WIN Then
  DEVELOPMENT = (Environ$("sessionname") = "Console"): If Not DEVELOPMENT Then ChDir _StartDir$
$End If
'...
If DEVELOPMENT Then End Else System
But is this a correct/reliable way? Where does sessionname=Console come from and will it stay like this in future versions?
I would love to have a _DEVELOPMENT variable out-of-the-box as part of QB64pe

Sidenote: Why is _CWD not correct initialized when not running from the IDE; It then points to the directory containing your exe instead


RE: Detect running from IDE - FellippeHeitor - 02-12-2024

This is 100% guaranteed to work:

Code: (Select All)
$DEBUG
test$ = ENVIRON$("QB64DEBUGPORT")
IF test$ = "" THEN PRINT "running independently" ELSE PRINT "running from inside the IDE"

Unless, of course, you have manually set QB64DEBUGPORT in your environment for whatever obscure reason.