উইন্ডোজ 7 64 বিবিট শিডিয়ুলড টাস্কে ভিবিএস স্ক্রিপ্ট - লগ ইন করার সময় কেবল রান দিয়ে কাজ করে


2

সুতরাং মূলত আমার কাছে এই ভিবিএস স্ক্রিপ্ট রয়েছে যা এক্সেল 2010 উদাহরণ খুলবে, এতে একটি ম্যাক্রো চালাবে এবং স্প্রেডশিটটি বন্ধ করে দেবে। আমি এটিকে স্বয়ংক্রিয় করতে শিডিউড টাস্ক ব্যবহার করে বলছি। এটি উইন্ডোজ এক্সপি-তে থাকাকালীন এটি খুব সুন্দরভাবে চলেছিল, তবে সম্প্রতি আমার সংস্থাটি উইন্ডোজ to-তে উন্নীত হয়েছে এবং যখন আমি উইন্ডোজ in-তে নতুন টাস্ক শিডিয়ুলারটি ব্যবহার করে এটি শিডিয়ুল করার চেষ্টা করেছি, কাজটি চলমান স্থিতিতে আটকে গিয়েছিল তবে আমি রান বেছে নিলে কিছুই চালানো হয় নি ব্যবহারকারী লগ ইন আছে কি না, সর্বোচ্চ সুযোগ সুবিধাগুলি সহ চালানো বা না ছাড়াই। তবে আমি যদি ব্যবহারকারী লগ-ইন থাকে কেবল তখনই রান ব্যবহার করি, সমস্ত কিছু ঠিকঠাক হয়।

সমস্যাটি যাচাই / যাচাই করার চেষ্টা করেছি এমন কয়েকটি বিষয় এখানে:

  1. একই স্ক্রিপ্টটি উইন্ডোজ এক্সপিতে নির্ধারিত টাস্কের সাথে নির্ধারিত টাস্কের সাথে ব্যবহারকারীর প্রয়োজন ছাড়া লগইন হতে পারে। আমি যখন ডাবল ক্লিক করেছিলাম তখন অবশ্যই স্ক্রিপ্টটি কাজ করবে।

  2. এক্সেল উদাহরণ ব্যবহার করে না এমন আরেকটি স্ক্রিপ্ট কোনও সমস্যা ছাড়াই নির্ধারিত হতে পারে।

  3. আমি ভিবিএস স্ক্রিপ্ট কল করার জন্য একটি .bat ফাইল তৈরি করেছি এবং কোনও ভাগ্য ছাড়াই ব্যাট ফাইলটি শিডিয়ুল করার জন্য উইন্ডোজ টাস্ক শিডিয়ুলার ব্যবহার করেছি, ব্যাট ফাইলটি কোডের একটি লাইন:

    সি: \ উইন্ডোজ \ System32 \ CScript.exe // নোলোগো // বি "সি: \ myscript.vbs"

    আমি যখন এটি চালিয়েছি, এটি দেখায় যে টাস্কটি সম্পূর্ণ হয়েছে তবে কিছুই কখনও চালু করা হয়নি বা চালানো হয়নি।

    আমি চেষ্টা করেছি এমন অন্যান্য জিনিসগুলির মধ্যে রয়েছে প্রোগ্রামটি হিসাবে সিএমডি ব্যবহার করা। / স্ক্রিপ্ট এবং / সি আর্গুমেন্ট হিসাবে "" সি: \ myscript.vbs ", বা প্রোগ্রাম: / স্ক্রিপ্ট হিসাবে সি: \ উইন্ডোজ 32 সিস্টেম 32 \ সিএসক্রিপ.এক্সপি এবং ব্যবহার করে include // নোলোগো // বি "সি: \ myscript.vbs" আর্গুমেন্ট হিসাবে। ভাগ্য নেই সব।

  4. এক্সেল এমনকি এই ক্ষেত্রে চালু করা হয়নি কারণ আমি দেখতে পাচ্ছি টাস্ক ম্যানেজারে কোনও অতিরিক্ত এক্সেল প্রক্রিয়া নেই।

  5. উইন্ডোজ এক্সপি এর সাথে সামঞ্জস্যতা মোডে কাজটি নির্ধারণ করার বিকল্প রয়েছে বলে মনে হচ্ছে তবে আমি যখন সাধারণ ট্যাবের অধীনে ডান ক্লিক এবং বৈশিষ্ট্যগুলি নির্বাচন করার চেষ্টা করেছি তখন উইন্ডোজ and এবং সার্ভার ২০০৮ আর ২, দ্বিতীয় বিকল্পটি উইন্ডোজ ভিস্তা এবং সার্ভার ২০০৮।

  6. আমার অ্যাকাউন্টে পিসিতে প্রশাসকের অধিকার রয়েছে।

অতএব, আমার কোনও লগ ইন করার প্রয়োজন ছাড়াই এই স্ক্রিপ্টটি কোনওভাবে নির্ধারিত করতে পারি? আমি যেকোন বিকল্পের জন্য উন্মুক্ত। পিসি উইন্ডোজ 7 এন্টারপ্রাইজ 64 এক্সে 2010 এক্সেল ইনস্টল করা আছে।

আপনার সাহায্যের জন্য আগাম ধন্যবাদ!


1
আপনি যখন স্ক্রিপ্টটি চালাবেন তখন আপনাকে স্ক্রিপ্টটি প্রশাসনিক স্তরে উন্নত প্রাইভেলাইজ সহ উন্নত করতে হবে।
রামহাউন্ড

@ র‌্যামাউন্ড আপনার বার্তার জন্য ধন্যবাদ, আমি ইতিমধ্যে এটি ভাগ্য ছাড়াই সর্বোচ্চ প্যাকেজ সহ চালানোর চেষ্টা করেছি।
zhuanyi

@ হুয়ানি - আপনি ঠিক সেই কাজটি করতে ব্যবহৃত প্রক্রিয়াটি সম্পর্কে আপনার প্রশ্নটি আপডেট করুন। এই ধরণের প্রশ্নগুলি জিজ্ঞাসা করা বেশিরভাগ লোকেরা "এটি উইন্ডোজ এক্সপিতে কাজ করে তবে উইন্ডোজ not নয়" ভুলে যায় যে উইন্ডোজ ভিস্তা এবং ইউএসি এর সাথে একটি দুর্দান্ত চুক্তি পরিবর্তিত হয়েছে যার ফলস্বরূপ Windows 7এটি এমনও হয় যে ডিফল্ট Administratorব্যবহারকারীর প্রোফাইলে সমস্যা থাকতে পারে যদি কিছু নির্দিষ্টভাবে কনফিগার না করা হয় তবে উপায় বা একটি প্রক্রিয়া সঠিক ভাবে শুরু করা হয়।
রামহাউন্ড

@ র‌্যামাউন্ড আমি নিশ্চিত না যে আপনি কী বলতে চাইছেন তা আমি জানি না, মূলত যখন আমি উইন্ডোজ এক্সপি ব্যবহার করছিলাম, আমি কেবল সকাল সকাল ৮ টা থেকে চালানোর জন্য একটি ভিবি স্ক্রিপ্ট নির্ধারণ করছিলাম, আমি লগ ইন করছি কিনা তা গুরুত্বপূর্ণ নয়। উইন্ডোজ running চালিত এই পিসিতে ইউএসি সক্ষম করা নেই তাই এটি বিবেচনা করা উচিত নয় এবং আমার অ্যাডমিনের অধিকারও রয়েছে।
zhuanyi

কেবলমাত্র ইউএসি অক্ষম থাকায় আপনার প্রয়োজনীয়তাটি প্রক্রিয়ায় উন্নীত করার প্রয়োজনটি পরিবর্তন করে না।
রামহাউন্ড

উত্তর:


1

লগ ফাইল ব্যবহার করে গ্রুপ নীতি সমস্যা সমাধান করা

গ্রুপ পলিসি অবজেক্ট এডিটর ক্লায়েন্ট সাইড এক্সটেনশনের জন্য লগিং সক্ষম করুন

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
GPTextDebugLevel REG_DWORD 0x30002

0 / লগ দেখুন:

 %windir%\debug\usermode\gptext.log

1/32-বিট রান vbscript:

%windir%\syswow64\cscript.exe "C:\myscript.vbs"

2 / আপনি উইন্ডোজ ভিস্তা বা উইন্ডোজ 7 এ ব্যবহারকারী অ্যাকাউন্ট নিয়ন্ত্রণ চালু করার পরে প্রোগ্রামগুলি কিছু নেটওয়ার্ক অবস্থান অ্যাক্সেস করতে পারে না

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"EnableLinkedConnections" REG_DWORD 1

3 / ইউএসি অক্ষম করুন

কমান্ড লাইন:

vbs-32.cmd ExcelSheetName.vbs ExcelSrc.xls

vbs-32.cmd:

SET WSH32=%windir%\SysWOW64\cscript.exe
%WSH32% %*

SheetName.vbs:

'Microsoft ActiveX Data Object 2.8 Library
'Microsoft ADO Ext. 2.8 for DDL And Security

Const ArrSize = 100
Dim ArrSheetName()
ReDim ArrSheetName(ArrSize)
IndexArr = 0

IF WScript.Arguments.Count = 0 Then
        WScript.Echo "Script Usage:"
        WScript.Echo "%windir%\SysWOW64\cscript.exe ExcelSheetName.vbs [Excel file full path]"
        WScript.Echo "%windir%\SysWOW64\cscript.exe ExcelSheetName.vbs D:\Office\ExcelSrc.xls"
       Wscript.Quit(10)
End If

Dim ExcelFileName
ExcelFileName=WScript.Arguments(0)

Dim ADOCatalog, ADOTable, ADODBConnection

Set ADOCatalog      = Createobject("ADOX.Catalog")
Set ADOTable        = Createobject("ADOX.Table")
Set ADODBConnection = CreateObject("ADODB.Connection")

Dim strConnString, strSheetName

strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ExcelFileName & ";Extended Properties=Excel 8.0;"

ADODBConnection.Open strConnString
Set ADOCatalog.ActiveConnection = ADODBConnection

For Each ADOTable In ADOCatalog.Tables
strSheetName = ADOTable.Name
strSheetName = Replace(strSheetName, "'", "")
strSheetName = Left(strSheetName, InStr(1, strSheetName,"$", 1)-1)
'Wscript.Echo strSheetName
ArrSheetName(IndexArr)=strSheetName
IndexArr=IndexArr+1

Next
ReDim Preserve ArrSheetName(IndexArr-1)

ADODBConnection.Close

Set ADOCatalog      = Nothing
Set ADOTable        = Nothing
Set ADODBConnection = Nothing

For Each ArrValue in ArrSheetName
    Wscript.Echo ArrValue
Next

উত্তরের জন্য ধন্যবাদ, মূলত ফাইলগুলি স্থানীয় তাই আমি মনে করি না দ্বিতীয় বিকল্পটি গুরুত্বপূর্ণ। যাইহোক, প্রথম পয়েন্টের জন্য, আমি সিসক্রিপ্টের জন্য অনুমান করি, এটি 32 বনাম 32 বিটের জন্য কোনও ব্যাপার নয়? (যতক্ষণ না আমার ওএস 64 বিট হয়)? ইউএসি অক্ষম হওয়ার বিষয়ে নিশ্চিত হয়ে গেছে এবং কোডটিতে কোনও গ্রাফিকাল / পপ-আপ নেই।
zhuanyi

@ ঝুয়ানী - আপনার প্রশ্নটির কোনও অর্থ নেই।
রামহাউন্ড

@ র‌্যামাউন্ড অপশন 1-এ, এসটিটিআর বলেছে যে আমার 32 বিট চালানো উচিত, তবে আমার যুক্তিটি হ'ল যদি আমার উইন্ডোজ 64৪ বিট হয় তবে আমি 32 বা bit৪ বিট ঠিকে সিএসক্রিপ্ট চালিয়েছি তাতে কিছু আসে যায় না? এখন বুঝবেন?
zhuanyi

@ ঝুয়ানিয়ে কিছু অফিস সিওএম objects৪-বিট বাস্তবায়ন এবং ডাটাবেস সরবরাহকারীর মধ্যে নেই। "সরবরাহকারী = মাইক্রোসফ্ট। জেট.ওএলডিবি .৪.০; ডেটা উত্স =" এবং এক্সেলফিলনেম & "; বর্ধিত বৈশিষ্ট্য = এক্সেল ৮.০;" অ্যাডক্স.ক্যাটালগ, অ্যাডক্স.ট্যাবল ... কোডের নমুনা দেখুন।
এসটিটিআর

0

আমার একই সমস্যা ছিল এবং এটি কয়েক মাস ধরে লড়াই করেছি। অবশেষে কিছু সহায়তার জন্য মাইক্রোসফ্টকে ডেকে আনে। সমাধানটি এমন কিছু নয় যা আমি কখনও খুঁজে পেতাম, সুতরাং আশা করি এটি অন্যকেও সহায়তা করবে। স্ক্রিপ্টটি ঠিকঠাক হবে যখন আমি পাওয়ার পাওয়ার (এবং কমান্ড লাইন) এ এটি চালু করেছি তবে এটি নির্ধারিত টাস্ক হিসাবে চালু হলে এটি চলবে তবে প্রত্যাশিত ফলাফলের সাথে নয়। মাইক্রোসফ্ট আমাকে জানিয়েছে যে আমার সমস্যাটি "নন-ইন্টারেক্টিভ মোডে" এক্সেল চালানোর সাথে সম্পর্কিত, আপনার দুটি ডিরেক্টরি তৈরি করতে হবে।

  • আপনাকে একটি ফোল্ডার তৈরি করতে হবে (বা একটি bit৪ বিট উইন্ডোতে দুটি):

(32 বিট, সর্বদা) সি: \ উইন্ডোজ \ সিস্টেম 32 \ কনফিগারেশন \ সিস্টেমেপ্রোফাইল \ ডেস্কটপ

(B৪ বিট) সি: \ উইন্ডোজ \ সিএসডাব্লু 64৪\ \ কনফিগারেশন \ সিস্টেমেপ্রোফাইল \ ডেস্কটপ

আপনি যখন অ-ইন্টারেক্টিভ মোডে চালানোর চেষ্টা করছেন তখন এমএস এক্সেল এটি সন্ধান করবে, যদি এটি উপস্থিত না হয় তবে এটি অ ইন্টারেক্টিভ মোডে খুলবে না।

একবার এগুলি তৈরি হয়ে গেলে নির্ধারিত টাস্ক নির্দোষভাবে চলে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.