使用C#从RLM读取许可证文件(C ++到C#转换)

时间:2009-09-18 16:26:56

标签: c# c++ file-io license-key

我正在使用Reprise RLM许可证管理器研究互联网激活。我无法弄清楚如何从Web服务器将许可文件转换为带有C#的文本文件(我也是C#的新手)。

RLM附带了一个C ++示例,但我无法翻译它。

我的代码(用于演示)如下所示:

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建立并验证连接。一旦建立,我如何访问该文件并将其写入本地文件?

if语句的C ++代码如下:

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

什么是C#等价物?

1 个答案:

答案 0 :(得分:1)

嗯,这简直太容易了。事实证明,传递给rml_act_request()的'new byte []'包含许可文件的内容。我所要做的就是将它变为局部变量,将其转换为字符串并使用TextWriter.WriteLine()将其写入文件;

我希望在某处记录下来......