Sujet : Re: What programs do you make sure are installed on a new Linux
De : bowman (at) *nospam* montana.com (rbowman)
Groupes : comp.os.linux.miscDate : 18. Jul 2024, 01:31:22
Autres entêtes
Message-ID : <lfr2iaFt3q5U3@mid.individual.net>
References : 1 2 3 4 5 6
User-Agent : Pan/0.149 (Bellevue; 4c157ba)
On Wed, 17 Jul 2024 22:48:39 -0000 (UTC), Lawrence D'Oliveiro wrote:
Another weird distinction: non-console applications don’t get any
standard input/output/error streams, and will abort if they try to
access them
I can't address what goes on in pythonw but in a straight service
[DllImport("kernel32.dll")]
static extern bool AttachConsole(int dwProcessId);
private const int ATTACH_PARENT_PROCESS = -1;
static void Main()
{
string[] args = Environment.GetCommandLineArgs();
foreach (string arg in args)
{
if (arg == "-v")
{
AttachConsole(ATTACH_PARENT_PROCESS);
Console.WriteLine("{0} version {1}",
Assembly.GetExecutingAssembly().GetName().Name,
Assembly.GetExecutingAssembly().GetName().Version);
return;
}
}
works nicely if you want to print the version and exit rather than running
the service.