2012-03-19 17 views
16

yo estaba tratando de utilizar omnicompletion de Vim con mi código Python, pero cada vez que intento C-x + C-O, se le solicita el siguiente mensaje de error:error de tiempo de ejecución con Vim Omnicompletion

Runtime Error!

Programa E: \ Vim \ vim73 \ gvim.exe

R6034 Una aplicación ha hecho un intento de cargar la biblioteca de tiempo de ejecución C incorrectamente. Póngase en contacto con el equipo de soporte de la aplicación para obtener más información.

¿Alguien podría decirme cómo resolver este problema! ¡Muchas muchas gracias!

Respuesta

22

Tengo el mismo problema que causa que gvim no pueda cargar python pyd dll. Hay algunos consejos para resolver el dll de .pyd que causa el problema anterior. No estoy seguro de que haya alguna forma de resolver el Error de tiempo de ejecución para todos los dll. Refere a Not embed the correct manifest for the msvc runtimes on windows enlace sobre cómo resolver su problema.

Actualización: En lugar de actualizar el manifiesto para el archivo .pyd. Intenté actualizar el manifiesto para gvim directamente actualizando el manifiesto original de gvim con algunos cambios del manifiesto de python.exe.

# dump manifest from gvim.exe 
>> mt.exe -inputresource:gvim.exe;#1 -out:gvim.manifest 

# dump manifest from python.exe 
# *I use python26 for gvim, default gvim come with python27 
>> mt.exe -inputresource:c:\python26\python.exe;#1 -out:python.manifest 

# manually edit gvim.manifest, just change the line with dependentAssembly with 
# line from the python.manifest which will depend on VC90.CRT 
# Then, update the edited manifest into gvim.exe 
>> mt.exe -manifest gvim.manifest -outputresource:gvim.exe;1 

continuación son mis gvim.manifest editado:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> 
    <assemblyIdentity processorArchitecture="*" version="7.3.0.0" type="win32" name="Vim"></assemblyIdentity> 
    <description>Vi Improved - A Text Editor</description> 
    <dependency> 
    <dependentAssembly> 
     <assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity> 
    </dependentAssembly> 
    </dependency> 

    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> 
    <security> 
     <requestedPrivileges> 
     <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel> 
     </requestedPrivileges> 
    </security> 
    </trustInfo> 

    <asmv3:application> 
    <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"> 
     <dpiAware>true</dpiAware> 
    </asmv3:windowsSettings> 
    </asmv3:application> 
</assembly> 
+2

Usted es el hombre! ¡Muchas gracias! –

+2

+1 Es ridículo que haya tenido que llegar a esto, pero esto solucionó el problema. – Hubro

+0

Debido a mi entorno, tuve muchas dificultades para que vim y python jugaran bien juntas. Modificar el manifiesto para gvim como se mencionó anteriormente resolvió totalmente mi problema. No hubiera pensado en esto. ¡Gracias! – Mark

4

que tenían el mismo problema (Windows 7) y pude resolverlo mediante la eliminación de los caminos de mi variable PATH que contiene msvcr90.dll.

Después de eliminar varias entradas, el error dejó de aparecer. Lamentablemente, no tomé nota de las entradas que eliminé. Pero fue C:\Program Files (x86)\OpenVPN\bin y varios otros incluyendo Windows Live.

me dieron el toque de buscar el problema en el camino de aquí (parte inferior de la página): https://bitbucket.org/Haroogan/vim-youcompleteme-for-windows/src

+2

Gracias por su solución.En mi caso, fue cmake que instalé recientemente :) – Maciek

+0

Gracias @Maciek por mencionar eso, fue cmake en mi caso también. Simplemente eliminé los DLL de tiempo de ejecución de su directorio ya que está instalado en mi sistema, por lo que no es necesario mantenerlo allí. –

+0

¡Muchas gracias! Tenía msvcr90.dll en mi directorio de trabajo que me causaba este problema. – randlet

Cuestiones relacionadas