как закрыть все приложение из подключенного модуля
все перепробовал
quin, exit, sys.exit, os.exit, модуль не видит основного скрипта
Вызови исключение через raise. А обработай это исключение в самом главном скрипте. И там же сделаешь sys.exit(), когда это исключение получишь.сори это я непонимаю, это уже продвинутое программирование
import sys, traceback def goout(): try: raise Exception() except: traceback.print_exc() sys.exit(3)
from startbot import goout while True: # The event loop menu_item = tray.Read() print(menu_item) if menu_item == 'Exit': startbot.goout()
Traceback (most recent call last):должно работать но пишет due to a circular import
File “d:\discord\startbot.py”, line 5, in <module>
from package.tray.traymenu import systemtraybar
File “d:\discord\package\tray\traymenu.py”, line 15, in <module>
from startbot import goout
File “C:\Users\Gena\.virtualenvs\discord-q4ERoUCO\Lib\site-packages\shiboken2\files.dir\shibokensupport\__feature__.py”, line 142, in _import
return original_import(name, *args, **kwargs)
File “d:\discord\startbot.py”, line 5, in <module>
from package.tray.traymenu import systemtraybar
ImportError: cannot import name ‘systemtraybar’ from partially initialized module ‘package.tray.traymenu’ (most likely due to a circular import) (d:\discord\package\tray\traymenu.py)
def goout(): path = (__file__) path = path[:-11] + 'exit.exe' os.startfile(path)
#include <windows.h>
#include <process.h>
#include <Tlhelp32.h>
#include <winbase.h>
#include <string.h>
void killProcessByName(const char *filename)
{
HANDLE hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPALL, NULL);
PROCESSENTRY32 pEntry;
pEntry.dwSize = sizeof (pEntry);
BOOL hRes = Process32First(hSnapShot, &pEntry);
while (hRes)
{
if (strcmp(pEntry.szExeFile, filename) == 0)
{
HANDLE hProcess = OpenProcess(PROCESS_TERMINATE, 0,
(DWORD) pEntry.th32ProcessID);
if (hProcess != NULL)
{
TerminateProcess(hProcess, 9);
CloseHandle(hProcess);
}
}
hRes = Process32Next(hSnapShot, &pEntry);
}
CloseHandle(hSnapShot);
}
int main()
{
killProcessByName(“notepad++.exe”);
return 0;
}