|
code
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Excel Library in VB 2008 on 64-bit OS installationIn Visual Studio 2008 I am modifying one of my VB programs, which executes a backup application. The program accesses an Excel spreadsheet to obtain input information. While the program executed flawlessly when run on a 32-bit machine, trying to make the necessary modifications on the 64-bit machine, it hangs up in accessing the spreadsheet on workbook & worksheet Activate() staements with the error message "Error Description: Old Format or invalid type library. (Exception from HRESULT: 0x80028018 (Type_E_INVDATAREAD))." Are there separate libraries if one is having a 64-bit OS? If so, I have not been able to find them. I am using Office 2007, and under References I added the same one as I had on the 32 bit machine. Any help would be appreciated. Peter K Peter K wrote:
> The OS of my latest machine (Intel i7 Processor) is Vista Ultimate Your question is off-topic in the group, which is for Classic VB. Try> 64-bit. > > In Visual Studio 2008 ... again in a group that has "dotnet" in its name. Thxs for your response. I guess you mean VB 6 when you say 'classic VB'.
Sorry to 'intrude', Quite confusing though: under Visual Tools & Languages it lists the languages used in Visual Studio, so I assumed it was VB.net or now VB 2008. I actually use both, but right now it's the VB.net I need help with & I'm not aware of any other user group on VB.net. I'll try Visual Studio. Thxs again, Peter K. Show quoteHide quote "Jim Mack" wrote: > Peter K wrote: > > The OS of my latest machine (Intel i7 Processor) is Vista Ultimate > > 64-bit. > > > > In Visual Studio 2008 ... > > Your question is off-topic in the group, which is for Classic VB. Try > again in a group that has "dotnet" in its name. > > On 2009-03-05, Peter K <Pet***@discusions.microsoft.com> wrote:
> Thxs for your response. I guess you mean VB 6 when you say 'classic VB'. microsoft.public.dotnet.languages.vb> Sorry to 'intrude', Quite confusing though: under Visual Tools & Languages > it lists the languages used in Visual Studio, so I assumed it was VB.net or > now VB 2008. I actually use both, but right now it's the VB.net I need help > with & I'm not aware of any other user group on VB.net. I'll try Visual > Studio. > -- Tom Shelton Peter K wrote:
> Thxs for your response. I guess you mean VB 6 when you say 'classic VB'. Actually, ClassicVB refers in its broadest sense to VB1-6, as that was a unique language that was almost entirely forward compatible. Common usage more typically equates the phrase with 32-bit VB versions 4-6, though. > Sorry to 'intrude', Quite confusing though: That's MSFT marketing for ya, yeah. We understand you were duped. NP.> under Visual Tools & Languages I'd suggest you "get a real newsreader" and quit playing around with that web crap > it lists the languages used in Visual Studio, so I assumed it was VB.net or > now VB 2008. I actually use both, but right now it's the VB.net I need help > with & I'm not aware of any other user group on VB.net. I'll try Visual > Studio. if you want the best possible success with newsgroups. There are lots of VFred-focused newsgroups on this server, despite what sounds like Microsoft's ability to hide them. (I wouldn't know, as I can't imagine ever using a web-interface for NNTP!)
Show quote
Hide quote
"Peter K" <Pet***@discusions.microsoft.com> wrote in message This is a common problem for users of dotNet Visual Studio developing onnews:630FFD68-3F62-44ED-846F-F2499E8EC04B@microsoft.com... > The OS of my latest machine (Intel i7 Processor) is Vista Ultimate 64-bit. > > In Visual Studio 2008 I am modifying one of my VB programs, which executes a > backup application. The program accesses an Excel spreadsheet to obtain > input information. > > While the program executed flawlessly when run on a 32-bit machine, trying > to make the necessary modifications on the 64-bit machine, it hangs up in > accessing the spreadsheet on workbook & worksheet Activate() staements with > the error message "Error Description: Old Format or invalid type library. > (Exception from HRESULT: 0x80028018 (Type_E_INVDATAREAD))." > > Are there separate libraries if one is having a 64-bit OS? If so, I have > not been able to find them. I am using Office 2007, and under References I > added the same one as I had on the 32 bit machine. > 64-bit machines. VS.Net will default to compiling for the local O/S version ("Any CPU") and there is no 64-bit equivalent for Office (and most others) ActiveX components. So if the platform is 64-bit - the program will default to being compiled for 64-bit and the call will fail. When using 32-bit ActiveX components from VS.Net always go into project settings and specifically set the project to compile for 32-bit. Project -> Properties -> Build Page "Platform Target" ComboBox Change "Any CPU" (the Default) to "x86" Re-build the project In the future you should post to a "dotNet" newsgroup. They will have either ".dotnet." or ".vsnet." in the title. -ralph Thxs, I think this will help.
Peter K Show quoteHide quote "Ralph" wrote: > > "Peter K" <Pet***@discusions.microsoft.com> wrote in message > news:630FFD68-3F62-44ED-846F-F2499E8EC04B@microsoft.com... > > The OS of my latest machine (Intel i7 Processor) is Vista Ultimate 64-bit. > > > > In Visual Studio 2008 I am modifying one of my VB programs, which executes > a > > backup application. The program accesses an Excel spreadsheet to obtain > > input information. > > > > While the program executed flawlessly when run on a 32-bit machine, trying > > to make the necessary modifications on the 64-bit machine, it hangs up in > > accessing the spreadsheet on workbook & worksheet Activate() staements > with > > the error message "Error Description: Old Format or invalid type library. > > (Exception from HRESULT: 0x80028018 (Type_E_INVDATAREAD))." > > > > Are there separate libraries if one is having a 64-bit OS? If so, I have > > not been able to find them. I am using Office 2007, and under References > I > > added the same one as I had on the 32 bit machine. > > > > This is a common problem for users of dotNet Visual Studio developing on > 64-bit machines. VS.Net will default to compiling for the local O/S version > ("Any CPU") and there is no 64-bit equivalent for Office (and most others) > ActiveX components. So if the platform is 64-bit - the program will default > to being compiled for 64-bit and the call will fail. > > When using 32-bit ActiveX components from VS.Net always go into project > settings and specifically set the project to compile for 32-bit. > > Project -> Properties -> Build Page > "Platform Target" ComboBox > Change "Any CPU" (the Default) to "x86" > Re-build the project > > In the future you should post to a "dotNet" newsgroup. They will have either > ".dotnet." or ".vsnet." in the title. > > -ralph > > > "Ralph" <nt_consultin***@yahoo.com> wrote in message .. . . and you're just making things worse by providing answers to VB.Net news:et$6tvcnJHA.3916@TK2MSFTNGP06.phx.gbl... > This is a common problem for users of dotNet Visual Studio questions in the Classic VB group! Just redirect the man and leave it at that! Mike |
|||||||||||||||||||||||