Найти - Пользователи
Полная версия: закрыть прилежение
Начало » Python для новичков » закрыть прилежение
1
Genabox
как закрыть все приложение из подключенного модуля
все перепробовал
quin, exit, sys.exit, os.exit, модуль не видит основного скрипта
py.user.next
Вызови исключение через raise. А обработай это исключение в самом главном скрипте. И там же сделаешь sys.exit(), когда это исключение получишь.
Genabox
хорошо пославлю вопрос так
как из консоли выловить ‘System exit’ в основном скрипте и сделать os.exit?
Вызови исключение через raise. А обработай это исключение в самом главном скрипте. И там же сделаешь sys.exit(), когда это исключение получишь.
сори это я непонимаю, это уже продвинутое программирование
Genabox
general script
 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):
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)
должно работать но пишет due to a circular import

вопрос как правильно вызвать эту функцию goout() в главном скрипте из модуля?
Genabox
#### R E S H E N O ####
 def goout():
    path = (__file__)
    path = path[:-11] + 'exit.exe'
    os.startfile(path)

exe c++ >>>>>>>>>>
#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;
}

аминь.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB