clientc.c

来自「Simple Module Procedure Call for windows」· C语言 代码 · 共 40 行

C
40
字号
#include <stdio.h>
#include <stdlib.h>
#include <smpc/dsmpcc.h>

char about[100];
char buffer[1000000]; /* 1 Mb */

int main(int argc, char* argv[])
{
 char about[100];
 Smpc smpc;
 DSmpcParam sp, rp;
 dword sid, type = 0;
 int err, i;

 smpc = smpc_create();
 if(!smpc) { puts("Can't create SMPC"); return 0; }

 sid = argc > 1 ? atoi(argv[1]) : 13;
 printf("About %lu: ",sid); fflush(stdout);
 err = smpc_about(smpc,sid,&type,about,sizeof(about));

 if(err == Smpc_Success) {
  printf("'%s' type %lu\n",about,type);
  puts("Press any key for call test..."); getch();

  for(i = 0; i <= sizeof(buffer); i += 10000) {
   printf("Call: send=%lu recv=%lu\n",i,i);
   SmpcSet(&sp,buffer,i); SmpcSet(&rp,buffer,i);
   err = smpc_call(smpc,sid,&type,1,&sp,1,&rp,1);
   printf("Return: %s with %lu bytes\n",smpc_error(err),rp.size);
  }
 } else
  printf("Error: %s\n",smpc_error(err));

 smpc_delete(smpc);

 return err == Smpc_Success;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?