当前位置: 首页 > news >正文

网页网站原型图占位符怎么做凡客诚品为什么失败

网页网站原型图占位符怎么做,凡客诚品为什么失败,破天网站定制,聚美优品网站怎么做的今天闲着没事干,研究了下lua,lua是个好东西刚好前几天编译了frp位动态库所以顺便就做了个lua版本的frpc 其实这玩意也没啥用主要就是学习学习。 一、首先编译frp为动态库这个简单搭建go的环境添加几个导出函数编译就行没啥难的,今天学习lua就…

今天闲着没事干,研究了下lua,lua是个好东西刚好前几天编译了frp位动态库所以顺便就做了个lua版本的frpc 其实这玩意也没啥用主要就是学习学习。
一、首先编译frp为动态库这个简单搭建go的环境添加几个导出函数编译就行没啥难的,今天学习lua就是想用lua 调用fprc的动态库启动起来。
主要的接口:

#pragma once
#include <string>
#include "libfrpc.h"
#include "lua.h"
using namespace std;
/*
* 根据配置内容启动frpc
*/
long long LuaStartClientByContent(const char* cfgFilePath, const char* content, const char* uid);
/*
* 根据配置文件启动frpc
*/
long long LuaStartClient(const char* cfgFilePath, const char* uid);
/*
* 查询frpc的状态
*/
long long LuaGetClientState(const char* uid);
/*
* 停止frpc的状态
*/
long long LuaStopClient(const char* uid);
/*
* 注册Frpc的一些状态变化
*/
int LuaRegisterCallback(const char* scriptPath, const char* callbackFunctionName);

lua调用的如下:

-- 加载模块
local callback = require("luafrpc")
callback.LuaRegisterCallback("frpcallback.lua","callback")
--这里可以是绝对路径也可以是相对路径
local ret = callback.LuaStartClient("frpc.toml", "123456")
print(ret)

不过这里我只调用了两个接口实际可以调用上面的几个接口都是可以的,具体的参考c++那几个接口
以下是frpc的头文件

/* Code generated by cmd/cgo; DO NOT EDIT. *//* package github.com/fatedier/frp/cmd/frpc */#line 1 "cgo-builtin-export-prolog"#include <stddef.h>#ifndef GO_CGO_EXPORT_PROLOGUE_H
#define GO_CGO_EXPORT_PROLOGUE_H#ifndef GO_CGO_GOSTRING_TYPEDEF
typedef struct { const char *p; ptrdiff_t n; } _GoString_;
#endif#endif/* Start of preamble from import "C" comments.  */#line 16 "main.go"#include <stdlib.h>
#include <string.h>typedef int (*CallBackFunc)(int, const char*,long long,const char*);static int callCallBack(CallBackFunc cb, int v, const char* s,long long len,const char* uid) {return cb(v, s,len,uid);
}#line 1 "cgo-generated-wrapper"/* End of preamble from import "C" comments.  *//* Start of boilerplate cgo prologue.  */
#line 1 "cgo-gcc-export-header-prolog"#ifndef GO_CGO_PROLOGUE_H
#define GO_CGO_PROLOGUE_H/* 移除原始架构检查(替换为更安全的版本) */
#if defined(__LP64__) || defined(_WIN64) || defined(__x86_64__) || defined(__aarch64__)
/*static assertion to make sure the file is being used on architectureat least with matching size of GoInt.
*/
typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*) == 64 / 8 ? 1 : -1];
#else
typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*) == 32 / 8 ? 1 : -1];
#endiftypedef signed char GoInt8;
typedef unsigned char GoUint8;
typedef short GoInt16;
typedef unsigned short GoUint16;
typedef int GoInt32;
typedef unsigned int GoUint32;
typedef long long GoInt64;
typedef unsigned long long GoUint64;
typedef GoInt64 GoInt;
typedef GoUint64 GoUint;
typedef size_t GoUintptr;
typedef float GoFloat32;
typedef double GoFloat64;#ifdef _MSC_VER
//#include <complex.h>
//typedef float _Complex GoComplex64;
//typedef double _Complex GoComplex128; 
#else
typedef float _Complex GoComplex64;
typedef double _Complex GoComplex128;
#endif#ifndef GO_CGO_GOSTRING_TYPEDEF
typedef _GoString_ GoString;
#endif
typedef void *GoMap;
typedef void *GoChan;
typedef struct { void *t; void *v; } GoInterface;
typedef struct { void *data; GoInt len; GoInt cap; } GoSlice;#endif/* End of boilerplate cgo prologue.  */#ifdef __cplusplus
extern "C" {
#endifextern __declspec(dllexport) void RegisterCallback(CallBackFunc f);
extern __declspec(dllexport) GoInt StartClientByContent(GoString cfgFilePath, GoString content, GoString uid);
extern __declspec(dllexport) GoInt StartClient(GoString cfgFilePath, GoString uid);
extern __declspec(dllexport) GoInt GetClientState(GoString uid);
extern __declspec(dllexport) GoUint8 StopClient(GoString uid);#ifdef __cplusplus
}
#endif

写了这么多其实没啥用,就是记录下自己学习的记录,frpc实际用处直接启动官方提供的exe就ok了

最后附上链接:lua版本frpc

http://www.dtcms.com/a/507370.html

相关文章:

  • 【初识数据库】索引
  • Linux服务器编程实践59-管道通信:pipe函数创建匿名管道的方法与使用
  • 容器化安装新玩法
  • JVM内存分配机制
  • 企业网站的基本内容有哪些首页排名关键词优化
  • Qt C++ 调用 YOLO / SAM2的方案
  • AD导出FPGA管脚的方法
  • 邯郸做网站的公司郴州建设网站公司
  • 基于 ComfyUI + Wan2.2 animate实现 AI 视频人物换衣:完整工作流解析与资源整合(附一键包)
  • wdaaw
  • 做个企业网网站怎么做西安注册公司虚拟地址
  • [Java数据结构与算法]详解排序算法
  • 工业级时序数据库选型指南:技术架构与场景化实践
  • 精选五款电脑USB接口控制软件,助您高效管控USB端口
  • 有个性的个人网站js打开网站
  • tesla 2025 年在自动驾驶投入 多少钱
  • 做调查报告的网站钟点工
  • 在 Vue 3.5 中优雅地集成 wangEditor,并定制“AI 工具”下拉菜单(总结/润色/翻译)
  • 【YOLO模型】(4)--YOLO V3超超超超详解
  • idea 的全局的配置的修改
  • 永久免费云服务器推荐电子商务网站优化方案
  • Altium Designer(AD24)IEEE Symbols按钮总结
  • 阿里云k8s1.33部署yaml和dockerfile配置文件
  • 有口碑的盐城网站建设wordpress配置ip访问
  • LINUX15--进程间的通信-信号量
  • 在 Linux 内核中加载驱动程序(一)
  • yarn面试题
  • Android跨进程通信: Binder 进程间通信机制解析
  • 【Day 80】Linux-虚拟化
  • 建设厅官方网站网站主题的分类