Vai al contenuto

Tastiera su WinCC Unified PC runtime


Messaggi consigliati

Inserito:

Buongiorno.

sto attualmente lavorando con WinCC Unified V21 su un panel PC.
di norma su un pannello Unified normale cliccando un campo I/O o un qualsiasi campo d'inserimento compare a schermo la tastiera per poter scrivere, invece, con il PC, ciò non accade. guardando un po' in giro ho trovato uno script di Siemens che permette di avviare la tastiera virtuale di Windows ma il processo si blocca. a seguire li script che sto utilizzando e l'errore visualizzato sul RTIL trace viewer:

session: 0002, trace: SystemFunction 'StartProgram' failed! Error =ResultCode: 0x80000002 Error: CF_R_CANCELLED Description: The component reported a general error (File: D:\agent\_work\16\s\source\ScriptDeviceObjectModelPC\HmiDeviceSysFct.cpp, Func: CCScriptFW::CHmiDeviceSysFct::StartApp::<lambda_2>::operator ()) InternalMessage='promise rejected'

stando alla mia comprensione del trace lo script non dovrebbe star dando problemi, quanto più sembrerebbe che una parte del codice C++ che lo blocca (come scritto in questa parte dell'errore: "The component reported a general error (File: D:\agent\_work\16\s\source\ScriptDeviceObjectModelPC\HmiDeviceSysFct.cpp" ). ho controllato i permessi utente e sono corretti. sto genuinamente finendo le idee.

Screenshot 2026-02-25 094404.png

Inserita:

Ciao,

il problema potrebbe essere che si sta cercando di avviare un processo a 64 bit (C:\\Windows\\SysWOW64\\osk.exe) in un processo a 32 bit; qualche tempo fa ho avuto lo stesso problema in C# ed ho risolto effettuando parecchie ricerche sul web: prova a vedere se questo e questo ti spiega meglio il problema (avevo trovato un bell'articolo su Stackoverflow che spiegava in modo esauriente il problema, ma non lo trovo più ...).

Alla fine ho inserito "C:\\Windows\\sysnative\\cmd.exe /c start osk.exe" con "sysnative" usato come parola chiave che indica al sistema di selezionare il processo per la tastiera a schermo più corretto da avviare; il problema è che non so se lo script lo accetta (la cartella "sysnative" non esiste); io proverei prima con

"C:\\Windows\\system32\\osk.exe", sempre se il file esiste. altrimenti ci sono altre opzioni, ma occorrerebbe chiamare un paio di API di Windows e non so se sia possibile farlo in uno script del genere.

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...