Question

J'utilise le gestionnaire de licences Reprise RLM pour rechercher l'activation Internet. Je n'arrive pas à comprendre comment obtenir le fichier de licence du serveur Web dans un fichier texte avec C # (je suis également très novice en C #).

RLM est fourni avec un exemple en C ++ mais je ne peux pas le traduire.

Mon code (pour la démo) ressemble à ceci:

int stat = RLM.rlm_act_request(handle, "http://www.reprisesoftware.com", "rlmactdemo", activationKey, "", "", 1, "", new byte[RLM.RLM_MAX_LINE+1]);
if (stat == 0||stat == 1){
   //Successful connection
   //Read license file and write to local machine
}

rlm_act_request établit et vérifie la connexion. Une fois qu'il est établi, comment puis-je accéder au fichier et l'écrire dans un fichier local?

Le code C ++ pour tout ce qui se passe dans cette instruction if est le suivant:

char name[100];
char license[100];
int try;
FILE *f, *fopen();
stat = 1;

for (try=0; try<100; try++)
{
    sprintf(name, "a%d.lic", try);
    f = fopen(name, "r");
    if (f == (FILE *) NULL)
    {
        f = fopen(name, "w");
        if (f)
        {
            fprintf(f, "%s\n", license);
            fclose(f);
            break;
        }
        else
        {
            printf("Error writing license file \"%s\"\n", name);
            stat = -1;
            break;
        }
    }
}

Quel est l'équivalent C #?

Était-ce utile?

La solution

Eh bien, c'était étonnamment facile. Il s'avère que le 'nouveau byte []' qui passe à rml_act_request () contient le contenu du fichier de licence. Tout ce que j'avais à faire était d'en faire une variable locale, de la convertir en chaîne et de l'écrire dans un fichier à l'aide de TextWriter.WriteLine ();

J'aurais aimé que cela soit documenté quelque part ...

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