Ok. Thanks.
What's the output of dumpbin.exe /EXPORTS /path/to/slib.dll showing
the listing of your exported functions?

On Mon, Jun 24, 2019 at 2:37 PM <onop...@gmail.com> wrote:
>
> /* 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> 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> 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.
>> > > 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.

-- 
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/CAJ1xhMVi_MceiuJXM%3DDFZ3xXnE27VhWLSCAhJj-TWVLSE6CEbQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to