Question

Je fais une expérience exprès de faire un travail de programme exécutable sur Windows Azure.

J'ai d'abord essayé de le faire fonctionner à l'aide d'un bureau distant avec des rôles d'azur de Windows (ref http://msdn.microsoft.com/en-us/library/windowsazure/gg443832.aspx ), j'ai copié mon exe dans le bureau distant, ainsi que quelques dlls, puis j'utilise" regsvr32.exe"Pour enregistrer ces DLL, alors le problème est venu:" La configuration côte à côte est incorectée ".

Je sais comment résoudre ce problème lors de mon propre ordinateur (assurez-vous simplement que les bonnes dépendances sont dans le répertoire "winsxs"), mais maintenant c'est dans le bureau distant à l'aide de rôles d'azur de Windows, et je n'ai aucune autorisationajouter les bonnes dépendances dans le répertoire WINSXS. Alors, ici, je suis venu demander de l'aide, merci d'avance!

PS: Je ne peux pas changer ces DLL référencées par mon EXE.

Était-ce utile?

La solution

Je dirais que le problème ne pourrait être que parce que quelques-unes de la DLL de référence ne sont pas dans l'Azure VM, donc lorsque vous déployez votre colis (EXE + DLL), vous devez vous assurer que tous les composants et ils sont enregistrés dans le système. Il est bien sûr que vous puissiez vous connecter à Azure VM à l'aide de RDP et testez la manière dont votre déploiement fonctionne, mais le meilleur serait de déployer votre colis via un web / travailleur et dans votre rôle de travail peut être bon ajustement.

Vous devez toujours creuser davantage pour savoir pourquoi EXE n'a pas fonctionné et si vous fournissez plus de détails sur les bibliothèques et le processus, nous pouvons vous aider, mais ci-dessus, les informations sont très moins pour fournir des suggestions.

Pour résoudre ce problème ici, c'est ce que vous devriez faire:

  1. Créez un fichier ZIP et incluez la liste de référence DLL / EXE, fichier statique nécessaire à votre application
  2. Créez un rôle de travailleur et ajoutez ce fichier ZIP en tant que contenu et définissez la copie de sa propriété locale sur true.
  3. Ajoutez un fichier de lots CMD à votre projet Azure et écrivez toutes les étapes ci-dessous:

    3.1. Décompressez les fichiers dans un dossier local 3.2. Enregistrez toute la DLL à l'aide du processus REGSVR32 3.3. Configurez votre exe en tant que programme de programmateur dans ServiceFinition.Csdef

    Utilisation de votre EXE en tant que programme de programmateur, le processus d'hôte du rôle de travailleur commencera et le surveillera, le réglage ressemble comme ci-dessous:

    <Runtime executionContext="limited">
     <EntryPoint>
       <ProgramEntryPoint commandLine="your_exe_name.exe" setReadyOnProcessStart="true" />
     </EntryPoint>
    </Runtime>
    

    Une fois que vous avez des paramètres supérieurs, vous pouvez déployer le package AZURE, puis RDP vers Azure VM et Test si votre application a un problème.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top