add edge addon publish scripts
This commit is contained in:
1 parent
5c3f15c70e
commit
5dba81e4a4
27 files changed
+889
-792
No files matched your search
@@ -1,82 +1,82 @@
|
||||
import sys
|
||||
import struct
|
||||
import ctypes
|
||||
import threading
|
||||
import win32pipe
|
||||
import win32file
|
||||
|
||||
|
||||
pipe_name = r"\\.\pipe\botext"
|
||||
pipe_access = win32pipe.PIPE_ACCESS_DUPLEX
|
||||
pipe_type =win32pipe.PIPE_TYPE_MESSAGE | win32pipe.PIPE_WAIT | win32pipe.PIPE_READMODE_MESSAGE
|
||||
pipe_mode = win32pipe.PIPE_UNLIMITED_INSTANCES
|
||||
max_instances = 65536
|
||||
out_buffer_size = 65536
|
||||
default_time_out = 0
|
||||
security_attributes = None
|
||||
|
||||
|
||||
pipe = win32pipe.CreateNamedPipe(
|
||||
pipe_name,
|
||||
pipe_access,
|
||||
pipe_type,
|
||||
pipe_mode,
|
||||
max_instances,
|
||||
out_buffer_size,
|
||||
default_time_out,
|
||||
security_attributes,
|
||||
)
|
||||
|
||||
|
||||
def write_data(data):
|
||||
msglen = len(data)
|
||||
msglen_bytes = struct.pack("=I", msglen)
|
||||
sys.stdout.buffer.write(msglen_bytes)
|
||||
sys.stdout.buffer.write(data.encode())
|
||||
sys.stdout.buffer.flush()
|
||||
|
||||
|
||||
def read_thread_func():
|
||||
while True:
|
||||
raw_msglen = sys.stdin.buffer.read(4)
|
||||
if not raw_msglen:
|
||||
sys.exit(0)
|
||||
msglen = struct.unpack("=I", raw_msglen)[0]
|
||||
|
||||
# Read the message data
|
||||
data = sys.stdin.buffer.read(msglen)
|
||||
ctypes.windll.user32.MessageBoxW(0, data.decode(), "BotExt", 0)
|
||||
write_data('{"msg": "bridge"}')
|
||||
|
||||
|
||||
def namepipe_server(pipe):
|
||||
try:
|
||||
while True:
|
||||
win32pipe.ConnectNamedPipe(pipe, None)
|
||||
_, data = win32file.ReadFile(pipe, 4096)
|
||||
if data == b"close":
|
||||
sys.exit(0)
|
||||
print(data)
|
||||
write_data('{"msg": "client"}')
|
||||
# ctypes.windll.user32.MessageBoxW(0, "hi", "BotExt", 0)
|
||||
win32pipe.DisconnectNamedPipe(pipe)
|
||||
except Exception as e:
|
||||
win32pipe.DisconnectNamedPipe(pipe)
|
||||
finally:
|
||||
win32file.CloseHandle(pipe)
|
||||
|
||||
|
||||
def namepipe_server_forver(pipe):
|
||||
while True:
|
||||
namepipe_server(pipe)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
thread = threading.Thread(target=read_thread_func)
|
||||
thread2 = threading.Thread(target=namepipe_server_forver, args=(pipe,))
|
||||
thread.daemon = True
|
||||
thread2.daemon = True
|
||||
thread.start()
|
||||
thread2.start()
|
||||
thread.join()
|
||||
thread2.join()
|
||||
import sys
|
||||
import struct
|
||||
import ctypes
|
||||
import threading
|
||||
import win32pipe
|
||||
import win32file
|
||||
|
||||
|
||||
pipe_name = r"\\.\pipe\botext"
|
||||
pipe_access = win32pipe.PIPE_ACCESS_DUPLEX
|
||||
pipe_type =win32pipe.PIPE_TYPE_MESSAGE | win32pipe.PIPE_WAIT | win32pipe.PIPE_READMODE_MESSAGE
|
||||
pipe_mode = win32pipe.PIPE_UNLIMITED_INSTANCES
|
||||
max_instances = 65536
|
||||
out_buffer_size = 65536
|
||||
default_time_out = 0
|
||||
security_attributes = None
|
||||
|
||||
|
||||
pipe = win32pipe.CreateNamedPipe(
|
||||
pipe_name,
|
||||
pipe_access,
|
||||
pipe_type,
|
||||
pipe_mode,
|
||||
max_instances,
|
||||
out_buffer_size,
|
||||
default_time_out,
|
||||
security_attributes,
|
||||
)
|
||||
|
||||
|
||||
def write_data(data):
|
||||
msglen = len(data)
|
||||
msglen_bytes = struct.pack("=I", msglen)
|
||||
sys.stdout.buffer.write(msglen_bytes)
|
||||
sys.stdout.buffer.write(data.encode())
|
||||
sys.stdout.buffer.flush()
|
||||
|
||||
|
||||
def read_thread_func():
|
||||
while True:
|
||||
raw_msglen = sys.stdin.buffer.read(4)
|
||||
if not raw_msglen:
|
||||
sys.exit(0)
|
||||
msglen = struct.unpack("=I", raw_msglen)[0]
|
||||
|
||||
# Read the message data
|
||||
data = sys.stdin.buffer.read(msglen)
|
||||
ctypes.windll.user32.MessageBoxW(0, data.decode(), "BotExt", 0)
|
||||
write_data('{"msg": "bridge"}')
|
||||
|
||||
|
||||
def namepipe_server(pipe):
|
||||
try:
|
||||
while True:
|
||||
win32pipe.ConnectNamedPipe(pipe, None)
|
||||
_, data = win32file.ReadFile(pipe, 4096)
|
||||
if data == b"close":
|
||||
sys.exit(0)
|
||||
print(data)
|
||||
write_data('{"msg": "client"}')
|
||||
# ctypes.windll.user32.MessageBoxW(0, "hi", "BotExt", 0)
|
||||
win32pipe.DisconnectNamedPipe(pipe)
|
||||
except Exception as e:
|
||||
win32pipe.DisconnectNamedPipe(pipe)
|
||||
finally:
|
||||
win32file.CloseHandle(pipe)
|
||||
|
||||
|
||||
def namepipe_server_forver(pipe):
|
||||
while True:
|
||||
namepipe_server(pipe)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
thread = threading.Thread(target=read_thread_func)
|
||||
thread2 = threading.Thread(target=namepipe_server_forver, args=(pipe,))
|
||||
thread.daemon = True
|
||||
thread2.daemon = True
|
||||
thread.start()
|
||||
thread2.start()
|
||||
thread.join()
|
||||
thread2.join()
|
||||
Reference in new issue
Block a user