बहुत समय पहले इस तरह का एक लेख था कि स्कैनर पर एक बटन दबाए जाने पर स्वचालित स्कैनिंग को कैसे लागू किया जाए, लेकिन या तो मेरे हाथ कुटिल हैं या विस्तार से समझने के लिए मेरी अनिच्छा है, लेकिन मैं लेखक के पराक्रम को दोहरा नहीं सका। फिर भी, उन्होंने इस विचार को कई कारणों से लागू करने का निर्णय लिया:
- उस कार्य केंद्र से ऑपरेटर को विचलित न करें जिससे एमएफपी जुड़ा हुआ है;
- स्वचालित शीट फीडर और दो तरफा स्कैनिंग के कारण इलेक्ट्रॉनिक प्रतियां प्राप्त करने की प्रक्रिया को गति दें।
तो, हमारे पास: कैनन का इमेजरूनर 1133 ए एमएफपी यूएसबी के माध्यम से विंडोज 7 से चलने वाले कंप्यूटर से जुड़ा है। नेटवर्क में डोमेन प्रबंधन है, फ़ाइल भंडारण के साथ एक अलग कंप्यूटर है।
1. उपरोक्त लेख में हम लेखक के कार्यक्रम के लिंक की तलाश कर रहे हैं
नोट: प्रारंभ में, लेखक के पास 3 बटन थे ( config.ini और scan.js फ़ाइल यह दिखाता है )। इसलिए, scan.js फ़ाइल की लाइन 31 से स्रोतों में, हम एक और शर्त जोड़ते हैं। यहाँ कोड का टुकड़ा है जो मुझे मिला:
switch (param2) // { case get_ini_value("config.ini", "scan1_flag"): wsh = new ActiveXObject("WScript.Shell"); wsh.Run(get_ini_value("config.ini", "scan1_app"),6); break; case get_ini_value("config.ini", "scan2_flag"): wsh = new ActiveXObject("WScript.Shell"); wsh.Run(get_ini_value("config.ini", "scan2_app"),6); break; case get_ini_value("config.ini", "scan3_flag"): wsh = new ActiveXObject("WScript.Shell"); wsh.Run(get_ini_value("config.ini", "scan3_app"),6); break; case get_ini_value("config.ini", "scan4_flag"): wsh = new ActiveXObject("WScript.Shell"); wsh.Run(get_ini_value("config.ini", "scan4_app"),6); break; default: write_log(get_ini_value("config.ini", "logfile"), "No valid parameters\n" + objArgs); }
लेखक के साथ कैसे संकलित किया जाता है।
2. एक व्यवस्थापक के रूप में लॉग इन करें और आर्क को C: \ ProgramData \ स्कैन में अनपैक करें और इस निर्देशिका में डोमेन उपयोगकर्ता समूह (या कुछ अन्य) तक पूरी पहुँच दें। सिद्धांत रूप में, संग्रह से केवल दो config.ini और scan.js फ़ाइलों की आवश्यकता होती है।
3. व्यवस्थापक कंसोल में, निष्पादित करें
C:\ProgramData\scan\scan -reg
4. पीसी को रिबूट करें
5. व्यवस्थापक के रूप में लॉग इन करें और regedit चलाएँ। हम निम्न स्थानों में रजिस्ट्री में full.exe को स्कैन करने के लिए पथ तय करते हैं:
- HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ explorer \ AutoplayHandlers \ हैंडलर्स \ WIA_ {FC36F676-4675-4CC9-B705-38686454514} अनुभाग में, InitCmdline कुंजी
- HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ StillImage \ Registered एप्लीकेशन सेक्शन में, मान कुंजी
- 5.3 अनुभाग में HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ StillImage \ Events \ STIProxyEvent \ {FC36F676-4675-4CC9-B705-38686454514} Cmdline कुंजी
उदाहरण के लिए, वहाँ स्कैन। Exe था
और यह c: \ ProgramData \ scan \ scan.exe बन जाएगा
कैसे iCopy ब्लॉग पर झाँक से ईमानदारी से झाँकने के लिए अपने कार्यक्रम को निर्धारित करने के लिए
6. पीसी को पुनरारंभ करें, व्यवस्थापक के रूप में लॉग इन करें
7. ओपन "डिवाइस और प्रिंटर", एमएफपी पर राइट-क्लिक करें, खुलने वाली विंडो में "गुण स्कैन करें" का चयन करें, "इवेंट" टैब पर जाएं, जहां हम प्रत्येक ईवेंट के लिए स्कैनएप लॉन्च करने की कार्रवाई का चयन करते हैं
8. कॉन्फिगर फाइल c: \ ProgramData \ scan \ config.ini में डिबगफ्लैग ऑप्शन सही है ताकि लॉग फाइल रखी जाए
9. हम एमएफपी को स्कैन मोड में अनुवाद करते हैं, विकल्प का चयन करें, प्रत्येक स्कैन प्रोफ़ाइल के लिए ID_Event लिखें
10. हम अपनी आवश्यकताओं के लिए config.ini को ठीक करते हैं
यहाँ मेरा है:
[debug] debugflag=true logfile=debug.log [flags] scan1_flag=/StiEvent:{2A6CE1DC-C3E2-4ECF-8540-41F9197DDB86}; scan2_flag=/StiEvent:{030E4709-6263-4278-93B4-33C15644841A}; scan3_flag=/StiEvent:{6336E0AE-81A7-4B8A-9A63-156788D9AF9C}; scan4_flag=/StiEvent:{2BC72F52-CE02-42BC-A843-609A9FCEA15D}; [applications] scan1_app=c:\ProgramData\scan\scan_col.cmd scan2_app=c:\ProgramData\scan\scan_bw.cmd scan3_app=c:\ProgramData\scan\scan_bw_150.cmd scan4_app=rem
11. हमें एक उपयोगिता की भी आवश्यकता है जो आपको पूरी तरह से छिपी कंसोल प्रक्रियाओं को चलाने की अनुमति देती है। आप इसे यहाँ ले जा सकते हैं। हमें उनका संग्रह hidcon -x64.exe या hidcon-x32.exe मिलता है , इसे C: \ ProgramData \ scan में कॉपी करें और संक्षिप्त नाम के लिए इसे hidcon.exe नाम दें
12. उस लेख के लेखक की तरह, मैंने स्कैनिंग के लिए iCopy का उपयोग किया। कार्यक्रम के साथ संग्रह C: \ ProgramData \ स्कैन में अनपैक किया गया था। मेरा सुझाव है कि स्कैनिंग से पहले प्रोग्राम को ग्राफिकल इंटरफेस के साथ चलाएं और आवश्यक मोड को डीबग करें।
13. एक विशिष्ट कार्रवाई के लिए प्रत्येक cmd फ़ाइल की लिस्टिंग (विंडोज 1251 एन्कोडिंग)
rem scan_col.cmd rem chcp 1251 rem _ set now=%TIME:~0,-3% set now=%now::=% set now=%now: =0% set now=%DATE:~-4%%DATE:~3,2%%DATE:~0,2%_%now% rem set dt=\\server\scan c:\ProgramData\scan\hidcon.exe "c:\ProgramData\scan\iCopy.exe /file /path %dt%\%now%.jpg /adf /duplex /r 300"
rem scan_bw.cmd rem chcp 1251 rem _ set now=%TIME:~0,-3% set now=%now::=% set now=%now: =0% set now=%DATE:~-4%%DATE:~3,2%%DATE:~0,2%_%now% rem set dt=\\server\scan c:\ProgramData\scan\hidcon.exe "c:\ProgramData\scan\iCopy.exe /file /path %dt%\%now%.jpg /adf /duplex /gray /r 300"
rem scan_bw_150.cmd rem chcp 1251 rem _ set now=%TIME:~0,-3% set now=%now::=% set now=%now: =0% set now=%DATE:~-4%%DATE:~3,2%%DATE:~0,2%_%now% rem set dt=\\server\scan c:\ProgramData\scan\hidcon.exe "c:\ProgramData\scan\iCopy.exe /file /path %dt%\%now%.jpg /adf /duplex /gray /r 150"
14. मशीन पर जो स्कैनिंग के लिए गेंद प्रदान करता है (मेरे मामले में, विंडोज़), अनुसूचक को निम्नलिखित कार्य जोड़ें: 21:00 (OEM 866 एन्कोडिंग) पर हर दिन scan_move.cmd चलाएँ।
rem scan_move.cmd rem , set dt=d:\scan rem move /y %dt%\*.jpg %dt%\ rem 7- forfiles /p %dt%\ /d -7 /c "CMD /c del /Q @FILE"
MFPs के पास लटका:

UPD 05/05/2014: एक असुविधा थी - यदि स्थानीय स्तर पर कोई लॉग नहीं करता है तो स्कैनिंग नहीं होती है।