6

में पाइप किया जा सकता है मेरे पास विंडोज़ एप्लीकेशन है (.EXE फ़ाइल सी में लिखा गया है और एमएस-विजुअल स्टूडियो के साथ बनाया गया है), जो एसएसडीआईआई पाठ को stdout में आउटपुट करता है। मैं कुछ लिंक के साथ सीमित HTML शामिल करने के लिए ASCII पाठ को बढ़ाने के लिए देख रहा हूं। मैं इस एप्लिकेशन (.EXE फ़ाइल) को आमंत्रित करना चाहता हूं और उस एप्लिकेशन का आउटपुट लेना चाहता हूं और उसे ब्राउज़र में पाइप करना चाहता हूं। यह एक बार बात नहीं है, प्रत्येक नया वेब पेज स्थानीय एप्लिकेशन का एक और रन होगा!मैं स्थानीय विंडोज एप्लिकेशन कैसे चला सकता हूं और आउटपुट को ब्राउज़र

नीचे दिए गए HTML/जावा-स्क्रिप्ट एप्लिकेशन ने एप्लिकेशन को निष्पादित करने के लिए मेरे लिए काम किया है, लेकिन आउटपुट एक डॉस बॉक्स विंडो में चला गया है और इसे ब्राउज़र में पाइप नहीं करना है। ब्राउज़र को उस पाठ को कैप्चर करने के लिए ब्राउज़र को सक्षम करने के लिए मैं इस HTML एप्लिकेशन को अपडेट करना चाहता हूं (जिसे HTML के साथ बढ़ाया गया है) और ब्राउज़र के साथ प्रदर्शित करें।

<body> 
<script> 
function go() { 
    w = new ActiveXObject("WScript.Shell"); 
    w.run('C:/DL/Browser/mk_html.exe'); 
    return true; 
    } 

</script> 

<form> 
    Run My Application (Window with explorer only) 
    <input type="button" value="Go" 
    onClick="return go()"> 
</FORM> 

</body> 

उत्तर

2
  1. निष्पादन HTTP प्रोटोकॉल के बाद एक बंदरगाह पर सुनने है।
  2. फिर वेब पेज AJA- शैली HTTP अनुरोधों को स्थानीय पोर्ट को JAvascript के साथ बनाते हैं।
  3. निष्पादन योग्य पाठ लौटाता है।
  4. वेब पेज जावास्क्रिप्ट में डोम मैनिपुलेशन के माध्यम से खुद को अपडेट करता है।

हाँ, यह काम करता है। यह अभी से एक और क्यूबिकल में 5 फीट दूर हो रहा है।

+0

कहा जाता है आप मुझे इस पर विवरण दिशानिर्देश के साथ प्रदान कर सकते हैं? –

+0

हाइकल, कौन सा हिस्सा अस्पष्ट है कि यह कैसे हासिल किया जा सकता है? सुनने के भाग पर –

+0

। क्या कोडिंग एप्लिकेशन पर कोई गाइड/ट्यूटोरियल है जो विशिष्ट पोर्ट को सुनता है? –

0

अपने EXE को HTML युक्त एक temp फ़ाइल बनाना आसान होगा, फिर बस ब्राउज़र में temp HTML फ़ाइल खोलने के लिए Windows को बताएं।

2

लॉन्च करने के लिए आप पहले से ही WScript का उपयोग कर रहे हैं, यह StdOut भी पढ़ सकता है।

<html> 
<head> 
<script type="text/javascript"> 
function foo() { 
var WshShell = new ActiveXObject("WScript.Shell"); 
var oExec = WshShell.Exec("ipconfig.exe"); 
var input = ""; 

while (!oExec.StdOut.AtEndOfStream) { 
     input += oExec.StdOut.ReadLine() + "<br />"; 
} 

if (input) 
    document.getElementById("plop").innerHTML = input; 
} 
</script> 
</head> 
<body onload="foo();"> 
<code id="plop"></code> 
</body> 
</html> 
2

यह CGI

+0

+10। ऐसा करने का यह सही तरीका है। अस्थायी फ़ाइलों को लिखना गन्दा है, डब्लूएसएच को स्टडऑट सुनना बहुत आसान है, और निष्पादन योग्य में वेब सर्वर की जटिलता को पेश करने का बिल्कुल कोई कारण नहीं है। – josh3736

संबंधित मुद्दे

 संबंधित मुद्दे