Frage

Ich bin mit der Reprise RLM Lizenz-Manager der Erforschung Internet-Aktivierung. Ich kann nicht herausfinden, wie die Lizenzdatei vom Webserver in eine Textdatei mit C # zu bekommen (ich bin auch sehr neu in C #).

RLM kommt mit einem Beispiel in C ++, aber ich kann es nicht übersetzen.

Mein Code (für die Demo) sieht so aus:

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 stellt und überprüft die Verbindung. Sobald feststeht, wie greife ich auf die Datei und es eine lokale Datei schreiben?

Der C ++ Code für was auch immer in dem gilt auch, wenn Anweisung lautet wie folgt:

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;
        }
    }
}

Was ist das C # -Äquivalent?

War es hilfreich?

Lösung

Nun, das war überraschend einfach. Es stellt sich heraus, dass die ‚neue byte []‘, die () hält den Inhalt der Lizenzdatei rml_act_request erhält hindurchgeht. Alles, was ich tun musste, war es eine lokale Variable zu machen, wandeln sie es in einen String und schreiben mit TextWriter.WriteLine () einzureichen;

Ich wünschte, dies irgendwo dokumentiert worden war ...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top