Excel 2010

Aug 8, 2010 at 8:09 PM

I have been using ExcelDna flawlessly in Excel 2007.  However, I just installed Office 2010.  When I try to open my .xll file for use in Excel 2010, it says "The file you are trying to open, "ExcelDna.xll" is in a different format than specified by the file extension..."  Anyone else have this issue or know how to resolve it.


Thanks,

Dave  

Coordinator
Aug 10, 2010 at 12:37 PM

Hi Dave,

I have not heard of this error before. Is there a Continue: Yes/No/Cancel option when this message appears? What happens if you continue?

I can suggest you check the following:

1. Is it the 32-bit version of Excel? - Excel-Dna is not yet supported under the 64-bit version of Excel.

2. Is the VBA support installed - you can check by pressing Alt+F11 and confirming that the VBA IDE appears. It is possible to install Excel without VBA support, in which case no .xll add-ins can be loaded either.

3. Are you testing a recent, released version of Excel-Dna or have you recompiled the .xll from the source? Which version of Excel-Dna, Windows etc. are you using?

4. Google for the message - there is a registry key that will suppress it, but that might not fix the underlying cause.

Please post back if you find out more.

Regards,

Govert

 

 

Aug 10, 2010 at 3:58 PM
thank you for your promptreply. My problem was that I installed 64-bit
Excel. Thanks for a wonderful product

Dave

On Tue, Aug 10, 2010 at 7:38 AM, [email removed] wrote:
> From: govert
>
> Hi Dave,
>
> I have not heard of this error before. Is there a Continue: Yes/No/Cancel
> option when this message appears? What happens if you continue?
>
> I can suggest you check the following:
>
> 1. Is it the 32-bit version of Excel? - Excel-Dna is not yet supported under
> the 64-bit version of Excel.
>
> 2. Is the VBA support installed - you can check by pressing Alt+F11 and
> confirming that the VBA IDE appears. It is possible to install Excel without
> VBA support, in which case no .xll add-ins can be loaded either.
>
> 3. Are you testing a recent, released version of Excel-Dna or have you
> recompiled the .xll from the source? Which version of Excel-Dna, Windows
> etc. are you using?
>
> 4. Google for the message - there is a registry key that will suppress it,
> but that might not fix the underlying cause.
>
> Please post back if you find out more.
>
> Regards,
>
> Govert
>
>
>
>
>
> Read the full discussion online.
>
> To add a post to this discussion, reply to this email
> ([email removed])
>
> To start a new discussion for this project, email
> [email removed]
>
> You are receiving this email because you subscribed to this discussion on
> CodePlex. You can unsubscribe on CodePlex.com.
>
> Please note: Images and attachments will be removed from emails. Any posts
> to this discussion will also be available online at CodePlex.com
Aug 25, 2010 at 6:07 PM

Any time frame on when 64bit version of Excel will be supported.

Coordinator
Aug 25, 2010 at 8:26 PM

I have not had a serious look at making a 64-bit version. I don't expect it to be a major undertaking,  but don't see it as a priority.

If anyone wants to try, I'd be happy to advise on which parts need some care and could help with any problems that arise.

Otherwise, you will probably have to wait for early in the new year.

--Govert--

Nov 3, 2010 at 11:38 PM

Hi Govert,

I would be interested in trying to create a 64-bit version. Currently, when I try to reference ExcelDNA.xll in Office 2010 x64 edition, I get a "This is not a valid XLL Add-in error". I have your latest .027 source, but not the beta source. I am guessing this would be some tweaking in the C++ project for ExcelDNA?

If you can point me in the right direction, I would be happy to do some work on this.

Thanks,

Jordan

Coordinator
Nov 4, 2010 at 5:07 AM

Hi Jordan,

Adding 64-bit support to Excel-Dna is requested often and any help implementing would be much appreciated. I’m not likely to have much time to look at it before February or March, but I can certainly give some pointers and would be happy to advise along the way.

Some other users have had a look - I outline below what we have found so far. Perhaps coordinating by e-mail will be easier.

An outline of what needs to be done: You'd need to be able to deal with the C++ hosting side, and the parts in ExcelDna.Loader that do the managed-> unmanaged marshaling.

  1. The first step is to recompile the C++ project for 64-bit, porting the declspec(naked) and _asm parts to MASM/ML64.
  2. Make sure the 64-bit runtime loads properly into the Excel process.
  3. Next step is to make sure the managed ExcelDna.Loader loads properly and starts running. I.e. XlAddIn.XlAutoOpen should run. I don't expect problems here.
  4. Next we'd need to check that the GetFunctionPointerForDelegate works right with the trampoline we built in step 1.
  5. Then the final concern is the marshaling, where I mainly worry about the FieldOffset instructions in the XLoper12 type - they're all set explicitly because I didn't really understand how the C++ compiler would pack the structures. To get this right for 64-bit we might need a different type, or might need to know how to recompile for 64-bit, or might need to know how to set up the types to work for both. I don't know how to do this and expect it will take several days to understand and figure this out.
  6. Finally there might be some pointer arithmetic which needs checking, especially where arrays are marshaled.

Regarding step 1: The Microsoft 64-bit compiler does not support two low-level features that Excel-Dna uses: the export of 'naked' function and inline assembly. I think the right way to port the trampoline exports is to put that part into an ML64 project. Otherwise one could try to rewrite the memory at the export addresses in the style of the hooking libraries, but I would nervous that such a plan would upset operating system protections or anti-virus programs.

Regards,

Govert

May 6, 2012 at 6:11 PM

Hi. Was 64-bit version support completed ? I have Office 64-bit, downloaded the latest dna version, and it gives me 'not valid add-in' error or "The file you are trying to open, "ExcelDna.xll" is in a different format than specified by the file extension..."

If it was completed, where can I get that version ? The latest version I see available is 0.29, but that does not have the 64-bit version support.

Thanks.

Coordinator
May 6, 2012 at 6:34 PM
Edited May 6, 2012 at 6:37 PM

The 64-bit Excel is fully supported in v 0.29. Use the ExcelDna64.xll instead of ExcelDna.xll. Everything else works the same.

Currently .NET 4 is required for the 64-bit Excel.

-Govert