vs2005 on win7

R

RobcPettit

Hi, I've installed vs2005 on win7 with sp1. Followed all info to update to use with
win7. I'm trying to use a metalib.dll with my project. Basically this opensa directory to show metastock files. When I run the program I get System access violation. So ive tried this on another pc with xp, no problems at all. I've also tried on my laptop with win 7 and get the same error. Ive donea clean install of win 7, there is very little on the pc now. Any ideas atall. I'm hoping I've missed something basic when updating vs2005. I've installed both service packs for vista and win 7.
Regards Robert
 
A

Anders Eriksson

Hi, I've installed vs2005 on win7 with sp1. Followed all info to update to use with
win7. I'm trying to use a metalib.dll with my project. Basically this opens a directory to show metastock files. When I run the program I get System access violation. So ive tried this on another pc with xp, no problems at all. I've also tried on my laptop with win 7 and get the same error. Ive done a clean install of win 7, there is very little on the pc now. Any ideas at all. I'm hoping I've missed something basic when updating vs2005. I've installed both service packs for vista and win 7.
Regards Robert
Probably a permission problem.
Test by turning of UAC
http://www.mydigitallife.info/how-to-disable-and-turn-off-uac-in-windows-7/

// Anders
 
A

Arne Vajhøj

Hi, I've installed vs2005 on win7 with sp1. Followed all info to
update to use with win7. I'm trying to use a metalib.dll with my
project. Basically this opens a directory to show metastock files.
When I run the program I get System access violation. So ive tried
this on another pc with xp, no problems at all. I've also tried on my
laptop with win 7 and get the same error. Ive done a clean install of
win 7, there is very little on the pc now. Any ideas at all. I'm
hoping I've missed something basic when updating vs2005. I've
installed both service packs for vista and win 7.

32 or 64 bit Win7?

As far as I can google then metalib is COM and therefore
native code and tied to 32 bit.

If it is a 64 bit Win and .NET CLR startup in 64 bit then
something bad will happen.

Arne
 
M

Marcel Müller

As far as I can google then metalib is COM and therefore
native code and tied to 32 bit.

If it is a 64 bit Win and .NET CLR startup in 64 bit then
something bad will happen.

You might be right with respect to metalib. But there is no general
restriction that a COM object must have the same word width than the
caller. The entire Visual Studio is only 32 bit, including newer
versions. But COM is always a source of curios permission problems. It
is almost unpredictable in this subject.


Marcel
 
B

Brian Cryer

Anders Eriksson said:

If it is a UAC issue then an alternative to turning UAC off is not to
install to "C:\Program Files", but somewhere else. I install "older"
software to "C:\Program Files (Open)" - there is nothing special about the
name, it just reminds me that its similar to "C:program Files" but different
because there are no UAC issues. It works great for the older software I use
where this would otherwise be an issue.
 
R

RobcPettit

Hi, thankyou for your replys. Ive tried turning of uac, and installing in a different area. Im using 32 bit. Still no joy. I'm hoping metalib can help, no joy so far. Why would this not be an issue with xp.
Regards Robert
 
R

RobcPettit

Out of curiosity i tried this with vs2010 express and have the same problem. It seem to be something to do with protected memory.
Regards Robert
 
A

Arne Vajhøj

Out of curiosity i tried this with vs2010 express and have the same problem. It seem to be something to do with protected memory.

Maybe it is a bad lib that just doesn't work with newer Windows?

Do you have the latest version of the lib?

Arne
 
A

Arne Vajhøj

You might be right with respect to metalib. But there is no general
restriction that a COM object must have the same word width than the
caller.

????

If we are talking "in process" calls, then all the usual
restriction should apply - in short: same bitnesx required.
The entire Visual Studio is only 32 bit, including newer
versions.

And?

If VS is written in .NET and uses 32 bit COM modules, then
all that is required is to get it marked as target platform
x86 instead of any.

Arne
 
B

Brian Cryer

Hi, thankyou for your replys. Ive tried turning of uac, and installing in
a different area. Im using 32 bit. Still no joy. I'm hoping metalib can
help, no joy so far. Why would this not be an issue with xp.
Regards Robert

Whilst it might seem a little defeatest, if it works on XP but not Windows
7, then why not install it in the XP Virtual Machine? If you haven't got the
XP Virtual Machine it is a free download from Microsoft (not sure where,
you'll have to google for it). Once you have that then try installing in
there, after all it is one of the reasons why Microsoft have provided it.
 
G

Gene Wirchenko

On Fri, 3 Aug 2012 09:05:09 -0700, Peter Duniho

[snip]
Noting, however, that "XP Mode" (which is what you're talking about, is
available only on the higher-priced versions of Windows. "Ultimate" for
sure, and I think it might be free on "Professional" too.

It is on 7 Professional. I have never used it, but it is there.
Web search for "virtual pc xp mode" will turn up useful information there.

sincerely,

Gene Wirchenko
 
A

Arne Vajhøj

Noting, however, that "XP Mode" (which is what you're talking about, is
available only on the higher-priced versions of Windows. "Ultimate" for
sure, and I think it might be free on "Professional" too.

Professional, Enterprise and Ultimate has it.

Arne
 
R

RobcPettit

Thank you all for your replies. I have not managed to resolve it on windows7. What I have done is to use my XP pc, which I remote into. I'm awaiting a solution from the makers of metalib in the mean time. I tried virtual pc,but couldnt get vs2005 to install correctly.
Regards Robert
 
A

Arne Vajhøj

Thank you all for your replies. I have not managed to resolve it on
windows 7. What I have done is to use my XP pc, which I remote into.
I'm awaiting a solution from the makers of metalib in the mean time.
I tried virtual pc, but couldnt get vs2005 to install correctly.

VS2005 should install on WinXP (with .NET 2.0 or newer).

But you should be able to build on Win7 and just run on WinXP.

Arne
 
A

Arne Vajhøj

Two things:

Marcel may be referring to the fact that not all COM servers are "in-proc".
Maybe metalib is (I didn't look), but an out-of-proc COM server need not
match the platform type as the client.

Which is why I made the condition.

But given that the original post explicit said that it was a DLL
and not an EXE, then that condition should be true.

Unless of course DllHost.exe is being used.
Also, I'll also point out the wording in your post, which seemed to be
saying that simply being COM of any sort requires 32-bit. I.e. "metalib is
COM and therefore...tied to 32 bit".

I assume what you really meant is that metalib is itself 32-bit native
code, and therefore tied to 32-bit. That's just not what the sentence you
wrote seems to say.

Now you are talking about the first comment not the last.

You are correct that if it is a 64 bit COM DLL, then it is not
tied to 32 bit but tied to 64 bit.

But until Windows 8 becomes popular, then 64 bit COM is relative rare.

My "tied to 32 bit" without qualification comment was still wrong
though.

Arne
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top