7import isystem.connect
as ic
11connectionMgr = ic.ConnectionMgr()
14def connectAndDisconnect(port, connectionConfig):
17 print(
'No winIDEA with the specified configuration found, port = :', port,
18 '\n :', connectionConfig.toString(),
'\n')
20 print(
'Found winIDEA on port: ', port)
21 connectionMgr.connect(ic.CConnectionConfig().host(
'').udpDiscoveryPort(port))
22 ideCtrl = ic.CIDEController(connectionMgr)
26 connectionMgr.disconnect_close(bSaveAll=
False)
30connectionConfig = ic.CConnectionConfig()
31connectionConfig.instanceId(
'myID')
35print(
"Looking for winIDEA with ID 'myID' ... ")
37 connectionMgr.connect(connectionConfig.start_if_required())
38 port = connectionConfig.getUdpDiscoveryPort()
39 connectionMgr.disconnect_keep()
40 connectAndDisconnect(port, connectionConfig)
41except Exception
as ex:
42 print(f
' winIDEA not found: {ex}')
45print(
'Start new instance of winIDEA')
46connectionConfig.instanceId(
'myID').workspace(
'../../../targetProjects/SampleSTM32.xjrf')
47connectionMgr.connect(connectionConfig.start_always())
48port = connectionConfig.getUdpDiscoveryPort()
49connectionMgr.disconnect_close(bSaveAll=
False)
50connectAndDisconnect(port, connectionConfig)
54print(
'Start new instance of winIDEA started only if it is not running.')
55connectionConfig.instanceId(
'myID').workspace(
'../../../targetProjects/SampleSTM32.xjrf')
56connectionConfig.start_if_required()
57connectionMgr.connect(connectionConfig)
58port = connectionConfig.getUdpDiscoveryPort()
59connectionMgr.disconnect_close(bSaveAll=
False)
60connectAndDisconnect(port, connectionConfig)
64print(
'Start hidden winIDEA.')
65invisibleConnectionConfig = ic.CConnectionConfig()
66invisibleConnectionConfig.visibility(ic.IConnect.lfShowHidden).workspace(
r'../../../targetProjects/SampleSTM32.xjrf')
67invisibleConnectionConfig.start_always()
68connectionMgr.connect(invisibleConnectionConfig)
69print(f
'Connected: {connectionMgr.isAttached()}')
71debugCtrl = ic.CDebugFacade(connectionMgr)
72print(
'downloading to invisible winIDEA')
74print(
'Downloading finished')
79debugCtrl.waitUntilStopped(3000)
80print(
'main_loop_counter = ', debugCtrl.evaluate(ic.IConnectDebug.fMonitor,
'main_loop_counter').getResult())
83connectionMgr.disconnect_close(bSaveAll=
False)
84print(
'Invisible winIDEA has been shut down')