Q100716: விண்டோஸில் Nuke தொடங்கும்போது "_ctypes ஐ இறக்குமதி செய்யும் போது DLL சுமை தோல்வியடைந்தது" பிழைகளை எவ்வாறு தீர்ப்பது?

அறிகுறிகள்

விண்டோஸ் கணினியில் Nuke தொடங்க முயற்சிக்கும்போது, சில பயனர்கள் தொடர்ந்து செயலிழந்து, கட்டளை வரியில் பின்வருவனவற்றைப் போன்ற பிழைச் செய்தி தோன்றும்:

ImportError: DLL load failed while importing _ctypes: The specified module could not be found.

இந்தப் பிழையைத் தடுக்க எடுக்க வேண்டிய நடவடிக்கைகள் மற்றும் அது ஏன் நிகழ்கிறது என்பதற்கான பின்னணியை இந்தக் கட்டுரை வழங்கும்.

காரணம்

DLL load failed while importing _ctypes , Nuke 16 தொடங்குவதைத் தடுக்கக்கூடிய பின்வரும் நிரல்களைப் பற்றி தற்போது எங்களுக்குத் தெரியும். இருப்பினும், இது ஒரு முழுமையான பட்டியல் அல்ல என்பதை நினைவில் கொள்ளவும், மேலும் இந்த சிக்கல் பிற பயன்பாடுகளாலும் ஏற்படலாம்:

இந்த சிக்கல், Nuke இன் பைத்தானின் பதிப்போடு முரண்படும் கூடுதல் "பயன்பாட்டு பாதைகள்" Windows Registry இல் சேர்க்கப்பட்டதன் விளைவாகும். Nuke 16 ஐ இதுவரை அறிமுகப்படுத்தும்போது மட்டுமே இந்த சிக்கல் பதிவாகியிருந்தாலும், அதே சிக்கல் Nuke இன் பிற பதிப்புகளையும் பாதிக்கலாம்.

பைத்தானைப் பயன்படுத்தும் மூன்றாம் தரப்பு பயன்பாடு நிறுவப்பட்டதும், அது விண்டோஸ் பதிவேடு வழியாக பைத்தானின் தொகுதி தேடல் பாதையில் ( sys.path ) அதன் சொந்த கோப்பகங்களைச் சேர்க்கக்கூடும். பயன்பாட்டின் பைத்தானின் பதிப்பு Nuke பயன்படுத்தும் அதே பதிப்பாக இருந்தால், இந்த கூடுதல் “பயன்பாட்டு பாதைகள்” Nuke இயக்கத் தேவையான பைத்தானின் தொகுதிகளை அணுகுவதையும் இறக்குமதி செய்வதையும் தடுக்கலாம்.

உதாரணமாக, ஸ்பைடர் 6 பைதான் 3.11 ஐப் பயன்படுத்துகிறது, இது பைதான் Nuke 16 பயன்படுத்தும் அதே வெளியீடாகும். ஸ்பைடர் 6 அதன் "பயன்பாட்டு பாதைகளை" நோக்கி சுட்டிக்காட்டும் பதிவேட்டில் உள்ளீடுகளை உருவாக்குவதால், Nuke தொடங்கும்போது அது அந்த இடங்களில் குறிப்பிட்ட தொகுதிகளைத் தேடி, அவற்றைக் கண்டுபிடிக்க முடியாதபோது திறக்கத் தவறிவிடும்.

விண்டோஸ் பதிவக உள்ளீடுகள் மற்றும் பைதான் தொடர்பான கூடுதல் விவரங்களுக்கு, மேலும் படிக்க பகுதியைப் பார்க்கவும்.

தீர்மானம்

இந்த சிக்கலை தீர்க்க கிடைக்கக்கூடிய விருப்பங்கள் எந்த நிரல்(கள்) சிக்கலை ஏற்படுத்துகின்றன என்பதைப் பொறுத்தது. எனவே, முதல் படி எந்த குறிப்பிட்ட நிரல் Nuke பைதான் பதிப்போடு முரண்படுகிறது என்பதை சரிபார்க்க வேண்டும்.

அவ்வாறு செய்ய, Nuke 16 இன் பைதான் இயங்கக்கூடியதைத் தொடங்க கீழே கோடிட்டுக் காட்டப்பட்டுள்ள செயல்முறையைப் பின்பற்றி தற்போதைய தொகுதி தேடல் பாதைகளை அச்சிடவும்:

  1. ஒரு கட்டளை வரியில் சாளரத்தைத் திறந்து பின்வரும் கட்டளையை இயக்கவும்:
"C:\Program Files\Nuke16.0v1\python.exe"
  1. குறியீட்டை முழுமையாக இயக்க, பின்வரும் இரண்டு வரிகளை இயக்கவும், Enter விசையை இரண்டு முறை அழுத்தவும்:
import sys
for p in sys.path: print(p)
  1. இந்த கட்டத்தில் Nuke பயன்படுத்தும் தேடல் பாதைகள் அச்சிடப்பட்டிருப்பதை நீங்கள் காண வேண்டும்:

ஒப்பிடுகையில், ஸ்பைடர் 6 நிறுவப்பட்ட அதே வெளியீடு இங்கே:

குறிப்பு : இந்த கூடுதல் தனிப்படுத்தப்பட்ட பாதைகளை கைமுறையாக நீக்கவோ அல்லது திருத்தவோ கூடாது, அதற்கு பதிலாக சிக்கலைத் தீர்க்க கீழே உள்ள விருப்பங்களில் ஒன்றைப் பயன்படுத்த வேண்டும்.

பொறுப்பான நிரல்(கள்) அடையாளம் கண்டவுடன், உங்கள் தேவைகளுக்கு மிகவும் பொருத்தமான பின்வரும் தீர்வுகளில் ஒன்றைத் தேர்ந்தெடுக்கவும்:

அ) பயன்பாட்டை நிறுவல் நீக்கவும்

உங்களிடம் ஒரு சிக்கலான பயன்பாடு நிறுவப்பட்டிருந்தாலும், அது இனி தேவையில்லை என்றால், நிரலை நிறுவல் நீக்கவும், Nuke வெற்றிகரமாக தொடங்க முடியும்.

B) பயன்பாட்டை நிறுவல் நீக்கி புதிய பதிப்பிற்கு மேம்படுத்தவும்.

நீங்கள் இன்னும் நிரலைப் பயன்படுத்த வேண்டியிருந்தால், ஏற்கனவே உள்ள பதிப்பை அகற்றி, Nuke பைத்தானுடன் முரண்படாத சமீபத்திய வெளியீட்டிற்குப் புதுப்பிப்பதன் மூலம் சிக்கலைத் தீர்க்க முடியும்.

உதாரணமாக, சமீபத்திய அனகோண்டா3 வெளியீடு பைதான் 3.12 ஐப் பயன்படுத்துகிறது, மேலும் அதை நிறுவுவது Nuke 16 இன் துவக்க திறனைப் பாதிக்காது.

C) அதன் "பயன்பாட்டு பாதைகளை" வரையறுக்காமல் பயன்பாட்டை மீண்டும் நிறுவவும்.

நீங்கள் இன்னும் நிரலின் பதிப்பை மேம்படுத்தாமல் பயன்படுத்த வேண்டியிருந்தால், Anaconda3 மற்றும் MiniConda3 போன்ற சில பயன்பாடுகள் நிறுவலின் போது Nuke தொடங்குவதைத் தடுக்கும் "பயன்பாட்டு பாதைகளை" முடக்க ஒரு விருப்பத்தைக் கொண்டுள்ளன.

Anaconda3 மற்றும் MiniConda3 க்கு, இந்த விருப்பம் “ எனது இயல்புநிலை பைதான் 3.11 ஆக {நிரலைப்} பதிவுசெய்க ” என்று அழைக்கப்படுகிறது, மேலும் Nuke சரியாகத் தொடங்குவதற்கு இது முடக்கப்பட வேண்டும்.

பைதான் 3.11 க்கான இயல்புநிலையாக Anaconda ஐ வரையறுக்காமல் மீண்டும் நிறுவுவதற்கான அடிப்படை படிகளை கீழே காணலாம், ஆனால் குறிப்பிட்ட அமைப்பு பெயர் பயன்பாடுகளுக்கு இடையில் மாறுபடலாம், மேலும் அனைத்து நிரல்களிலும் இந்த விருப்பம் இருக்காது என்பதை நினைவில் கொள்ளவும்:

i) உங்கள் கணினியிலிருந்து பயன்பாட்டை நிறுவல் நீக்கவும்.
ii) நிரலை மீண்டும் நிறுவத் தொடங்குங்கள்.
iii) கேட்கப்படும்போது, " எனது இயல்புநிலை பைதான் 3.11 ஆக {நிரலைப்} பதிவு செய் " விருப்பப் பெட்டியை முடக்கவும் :

D) விண்டோஸ் பதிவேட்டை கைமுறையாக மாற்றவும்.

நீங்கள் ஒரு நிரலைத் தொடர்ந்து பயன்படுத்த வேண்டியிருந்தால், ஆனால் விண்டோஸ் பதிவேட்டில் "பயன்பாட்டு பாதைகள்" சேர்க்கப்படுவதைத் தடுக்கும் விருப்பம் அதற்கு இல்லை என்றால், இந்த பாதைகளை அகற்ற பதிவேட்டை சரிசெய்ய முடியும்.

எச்சரிக்கை : விண்டோஸ் பதிவேட்டில் செய்யப்படும் ஏதேனும் தவறான மாற்றங்கள் உங்கள் கணினியை மோசமாகப் பாதிக்கலாம், எனவே இது எச்சரிக்கையுடன் செய்யப்பட வேண்டும் மற்றும் விண்டோஸ் பதிவேட்டைத் திருத்துவதற்கு முன்பு எப்போதும் காப்புப்பிரதியை உருவாக்க வேண்டும். உங்கள் கணினியில் செய்யப்படும் எந்த மாற்றங்களுக்கும் Foundry பொறுப்பல்ல, மேலும் இதுபோன்ற மாற்றங்கள் மற்ற பயன்பாடுகள் சரியாக வேலை செய்வதைத் தடுக்கலாம்.


உங்கள் கணினியின் அமைப்புகளை Windows Registry வழியாக மாற்றுவது உங்களுக்கு வசதியாக இருந்தால், தொடர விரும்பினால், ஒரு நிர்வாகியாக பின்வரும் செயல்களைச் செய்யுங்கள்:

i) ரெஜிஸ்ட்ரி எடிட்டரைத் திறந்து, Computer\HKEY_CURRENT_USER\Software\Python\PythonCore
என்பதற்குச் செல்லவும். Computer\HKEY_CURRENT_USER\Software\Python\PythonCore
ii) 3.11 துணை கோப்புறையை விரிவுபடுத்தி, PythonPath கோப்புறையைத் தேர்ந்தெடுக்கவும்:

iii) இந்தக் கோப்புறையில் வலது கிளிக் செய்து, மறுபெயரிடு விருப்பத்தைத் தேர்ந்தெடுத்து, பெயரை "PythonPath_Disabled" (அல்லது அதைப் போன்றது) என அமைக்கவும்:

iv) Nuke 16 ஐ துவக்கும்போது DLL ஏற்றுதல் தோல்வியடைந்த பிழை இனி தோன்றக்கூடாது. இது அவ்வாறு இல்லையென்றால், நீங்கள் Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore இருப்பிடத்திலும் இந்த செயல்முறையை மீண்டும் செய்ய வேண்டியிருக்கும்.

மேலும் படிக்க

பதிவேட்டில் உள்ளீடுகள் Python sys.path எவ்வாறு மாற்றலாம் என்பது பற்றிய கூடுதல் தகவலுக்கு, இங்கே Python ஆவணங்களைப் பார்வையிடவும்:

https://docs.python.org/3/using/windows.html#finding-modules

முரண்பட்ட பைதான் “பயன்பாட்டு பாதைகளை” நீக்கிய பிறகும் நீங்கள் சிரமங்களைச் சந்தித்தால், தயவுசெய்து எதிர்கொள்ளப்பட்ட சரியான சிக்கலையும், எடுக்கப்பட்ட சரிசெய்தல் நடவடிக்கைகளையும் எங்களுக்குத் தெரிவிக்க ஒரு ஆதரவு டிக்கெட்டை உருவாக்கவும்.

ஆதரவு கோரிக்கையை எவ்வாறு திறப்பது என்பது பற்றிய கூடுதல் தகவலுக்கு, இந்தக் கட்டுரையைப் பார்க்கவும்:

Q100064: ஆதரவு டிக்கெட்டை எவ்வாறு திரட்டுவது

    We're sorry to hear that

    Please tell us why