"Boaz Harrosh" <[EMAIL PROTECTED]> wrote: > I did, I have tried both your suggestions. > > What ever you do. any thing after the @ sign gets truncated in the > import process and will not > Reach the Import table. > > Note that in any way we need a split. asm(.data section) needs a > none-decorated name and the Import table needs a Decorated one. What > ever you do to winebuild it will not write two separate names. right?
I don't know what exactly you did try, but here is my results, based on your code: Foo.spec: @ stdcall [EMAIL PROTECTED]@8(long long) fnFooSTD @ cdecl fnFooC (long long) fnFooC resulted Foo.spec.c: asm(".data\n" "\t.align 4\n" "__wine_spec_exports:\n" "\t.long 0\n" "\t.long 0\n" "\t.long 0\n" "\t.long __wine_spec_exp_names\n" "\t.long 1\n" "\t.long 2\n" "\t.long 2\n" "\t.long __wine_spec_exports_funcs\n" "\t.long __wine_spec_exp_name_ptrs\n" "\t.long __wine_spec_exp_ordinals\n" "__wine_spec_exports_funcs:\n" "\t.long fnFooC\n" "\t.long fnFooSTD\n" "__wine_spec_exp_name_ptrs:\n" "\t.long __wine_spec_exp_names+8\n" "\t.long __wine_spec_exp_names+15\n" "\t.text\n" "__wine_spec_exp_names:\n" "\t.string \"Foo.dll\"\n" "\t.string \"fnFooC\"\n" "\t.string \"[EMAIL PROTECTED]"\n" ^^^^^^^^^^<----------------------------<<<<<<<<< "\t.data\n" "__wine_spec_exp_ordinals:\n" "\t.short 0\n" "\t.short 1\n" "\tjmp fnFooC\n" "\tret\n" "\t.short 8\n" "\t.long fnFooC,0x00000000\n" "\tjmp fnFooSTD\n" "\tret $8\n" "\t.long fnFooSTD,0x00000000\n" "\t.text\n" "\t.align 4\n" ); As you can see it works for me. -- Dmitry.