/* Code generated by cmd/cgo; DO NOT EDIT. */

/* package _/F_/Git/returnHWID-Arma */


#line 1 "cgo-builtin-export-prolog"

#include <stddef.h> /* for ptrdiff_t below */

#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 3 "main.go"

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

#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

typedef 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_TYPE__ GoUintptr;
typedef float GoFloat32;
typedef double GoFloat64;
typedef float _Complex GoComplex64;
typedef double _Complex GoComplex128;

/*
  static assertion to make sure the file is being used on architecture
  at least with matching size of GoInt.
*/
typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 
1:-1];

#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" {
#endif


extern void RVExtensionVersion(char* p0, size_t p1);

extern void RVExtension(char* p0, size_t p1, char* p2);

#ifdef __cplusplus
}
#endif




понедельник, 24 июня 2019 г., 14:00:49 UTC+3 пользователь Alexander Kapshuk 
написал:
>
> Or was this it? 
>
> #ifdef __cplusplus 
> extern "C" { 
> #endif 
> extern void _RVExtensionVersion(char* p0, size_t p1); 
> extern void _RVExtensionArgs(char* p0, size_t p1, char* p2, char** p3, int 
> p4); 
> extern void _RVExtension(char* p0, size_t p1, char* p2); 
> #ifdef __cplusplus 
> } 
> #endif 
>
> The 32-bit exports listed here, 
> https://community.bistudio.com/wiki/Extensions, are most likely what 
> is listed in the module-definition file ending in .def. 
> Can you please try using the following declaration: 
> //export RVExtension 
> func RVExtension(output *C.char, outputsize C.size_t, input *C.char) {...} 
>
> Compile your dll and post the output of dumpbin.exe /EXPORTS 
> /path/to/slib.dll showing the listing of your exported symbols? 
>
> On Mon, Jun 24, 2019 at 11:41 AM Alexander Kapshuk 
> <alexande...@gmail.com <javascript:>> wrote: 
> > 
> > If I understand it correctly, cgo should have generated a 
> > _cgo_export.h header with a declaration for your exported function. 
> > Can you please post the generated declaration? 
> > 
> > On Mon, Jun 24, 2019 at 12:47 AM <ono...@gmail.com <javascript:>> 
> wrote: 
> > > 
> > > We are trying to make the x32 version of the extension, as shown in 
> the link below. 
> > > https://community.bistudio.com/wiki/Extensions#C.2FC.2B.2B 
> > > 
> > > How we see, for x64 we must use entry points 
> > > 
> > > RVExtension 
> > > RVExtensionArgs 
> > > RVExtensionVersion 
> > > 
> > > 
> > > but for x32 
> > > 
> > > _RVExtension@12 
> > > _RVExtensionArgs@20 
> > > _RVExtensionVersion@8 
> > > 
> > > 
> > > It is very hard for me to explain to you exactly what we need, because 
> I am new to this language, and C doesn’t know at all. I really hope that 
> you understand what I mean. 
> > > 
> > > воскресенье, 23 июня 2019 г., 22:20:53 UTC+3 пользователь Kurtis Rader 
> написал: 
> > >> 
> > >> On Sun, Jun 23, 2019 at 4:49 AM nicolas_boiteux via golang-nuts <
> golan...@googlegroups.com> wrote: 
> > >>> 
> > >>> I need some assistance to export a GO dll function to a C program. 
> > >>> 
> > >>> The C program (wich i m not the author) required to call a function 
> with this name: _RVExtension@12 
> > >> 
> > >> 
> > >> That is not a valid symbol (i.e., function name) in either C or Go. 
> In other words the following C is invalid: 
> > >> 
> > >>     extern int _RVExtension@12(); 
> > >>     int main() { 
> > >>         _RVExtension@12(); 
> > >>     } 
> > >> 
> > >> Your question has nothing to do with Go or C as such. What does the 
> "@12" represent? Is it an API version number? In any event your question is 
> really about a specific build toolchain on a specific platform. And you 
> didn't even bother to tell us what platform you are using. I'm guessing MS 
> Windows but we shouldn't have to make such guesses. 
> > >> 
> > >> -- 
> > >> Kurtis Rader 
> > >> Caretaker of the exceptional canines Junior and Hank 
> > > 
> > > -- 
> > > You received this message because you are subscribed to the Google 
> Groups "golang-nuts" group. 
> > > To unsubscribe from this group and stop receiving emails from it, send 
> an email to golan...@googlegroups.com <javascript:>. 
> > > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/golang-nuts/ec18ff38-d70b-41ef-b7b4-fb243f407e1c%40googlegroups.com.
>  
>
> > > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/049bf6f7-113a-4d39-bb38-c4838c1d5f1a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to