arg.... rolled an app installed on XP no probs, tested on Vista and get some compatibility nag screen.... What defines a 'Vista Compatible' install?
What's the app? Try 'run as admin' on the installer (even though vista tries to run every *setup*.exe as admin) and avoid installing it into 'program files'.
If you get the dialog that says 'this program has a known problem with vista' you have a 90% chance it won't work (personal experience here).
It's a self compiled installer that copies the files to the right place and executes them.... The app works fine, no problems at all just a nag screen saying something like "Did this application install properly? If you want vista to reinstall properly click here or click here to confirm"
Obviously windows thinks there is something I should do other than copy the files over.... maybe a registry entry, put it in the "Program Files" directory instead of C:\ or something?
It also installs a screensaver so maybe the problem lies there....
As I say everything seems to work fine so it just makes my app look unproffessional atm :bg
PS Yes I do want to use my own installer not a M$ or NSIS etc one
no fan of vista, here - and certainly not an expert - lol
maybe it is looking for the uninstall files ?
or registry entries for the Add/Remove Programs list ?
just guessing :P
You might need a manifest - http://stackoverflow.com/questions/898220/how-to-prevent-this-program-might-not-have-installed-correctly-messages-on-vist
ty I will check it out and see, M$ being versionist really gets my hackles up
I haven't looked at it yet, but this may be of help - Microsoft Application Compatibility Toolkit 5.5 (http://www.microsoft.com/downloads/details.aspx?familyid=24da89e9-b581-47b0-b45e-492dd6da2971&displaylang=en)
I dowenloaded it and guess what, it needs the DOT.NOT.2.0.FRAMEWORK. ::)
Quote from: hutch-- on January 12, 2010, 09:06:14 AM
I dowenloaded it and guess what, it needs the DOT.NOT.2.0.FRAMEWORK. ::)
Well us modern people already have it as part of the os :bg
I was more interested in the docs and faq, since I figured that the .msi had code to analyze your C source, not asm.
One guinea pig down... :toothy
I have had some version of NET on a win2000 machine that did not mess anything up but after the last Microsoft SDK install that ijnstalled 4 different versions it broke a whole pile of standard API code so I was a little wary of trying it on this box again.
I did repair my computer friend, he used vista.
He did encrypt and lock his harddisk and suddenly, the software for doing it is broken.
It took me a month to understand how can it be solved.
So here is what I did, when the program crashes, take a look on the detail of why the software is broken.
The error code is "Buffer Protection bla bla bla". Where it mean, Vista protect the stack buffer just in case if someone abuse it.
So how to solve it? Simple, just open the windows defender, uncheck all of the memory protection, and your software will start working. This is why I more like XP than Vista. Vista is secure, but informationless.
Oh I forget, based on my experience, turned off the buffer protection will lead you to a buffer overflow attack when connected to the internet. Never experienced it but worth to know. DDOS is a failed buffer overflow attack.
Its a good idea to leave the DEP in later Windows versions turned ON as it protects you from older hacks of system DLLs. If you have some old software that is not DEP compliant it may be worth setting exceptions for it but generally DEP is a good idea implimented at the OS level to slow up the idiot fringe that wrote stack exploits.
Windows Vista is still reporting my installer as 'being prepared for an old version of windows' any other ideas this is driving me nuts :lol
I have tried the SAT (Software Analysis Tool) which just lists what my installer is doing (Which obviously I already know) rather than telling me what a Vista install requires that an XP install doesnt :lol (I have no Vista machine to test on so I cant try out M$ Vista compatability auto reinstaller)
It is the most basic Vista install requirements I'm looking for, the app doesnt do anything special.... I already know certain registry entries are required for windows installer and I think I have met all of those....
If someone feels extra generous and wants to do the app install to test I can pm a link to the installer but the site isnt completed yet so I dont want to promote it to the world :bg.
If I can get it working I'll prepare a special Vista/7 Installer post for the board listing the requirements.... It is only a nag box that is the issue but it would be nice to avoid it :bg
My question for Vista users moved to Windows 7 : what's the situation with the latest OS Win 7?
Erol,
From my so far limited experience on Win7 64 bit, MASM32 install worked fine. It asks when you first start the installer if you want to run this file which it seems to do with any new file but the rest went in fine and it built everything successfully.
EDIT: My thinking is it must be some UAC issue or something.... I'll keep plugging at it and let you know if I find out
Hi!
I used to be on the old forums at win32asm.cjb.net and I just happened to come across this thread so I thought I might as well sign up.
I remember I had a similar problem with a vb.net app some time ago and it required administrative privileges which could be set in the project settings.
It seems a file named app.manifest is compiled into the resource which looks like this:
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC-Manifestoptionen
Wenn Sie die Ebene der Benutzerkontensteuerung für Windows ändern
möchten, ersetzen Sie den Knoten "requestedExecutionLevel" wie folgt:
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
Wenn Sie aus Gründen der Abwärtskompatibilität Datei- und Registrierungsvirtualisierung
verwenden möchten, löschen Sie den Knoten "requestedExecutionLevel".
-->
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</asmv1:assembly>
This is the standard manifest, though so you'd probably have to set execution level to requireAdministrator if this has anything to with your problem at all :)
comments in English:
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC Manifest Options
If you want to change the level of user control for Windows,
replace the nodes "requestedExecutionLevel" as follows:
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
If your file requires backward compatibility - and you want to use
virtualization registry, delete the node "requestedExecutionLevel".
-->
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</asmv1:assembly>
We were discussing this stuff a couple years ago.
http://www.masm32.com/board/index.php?topic=9422.msg68586#msg68586
There isn't much difference in this area between Vista and Win7. I think goofee has a good suggestion.
I am not very knowledgeable when it comes to installers though.
Thanks guys, This is the only think I know of that I havent checked yet.... I will test it out today.... Sorry for the delayed response, been out walking and camping for the last few days :bg
Well this is lame.... I tried the suggested fix and it worked fine, I then tried the old installer and it no longer brings up the error message, even tried modifying the old installer and installing but still no error message....
Go figure first I cant stop it erroring then I cant even force an error
I have noticed that windows has modified the old installer icon to add install shield (even on the rebuilt .exe when I download it) so I'll keep modifying till I break it :/
Quote
DDOS is a failed buffer overflow attack.
Possibly you have that confused Onan?
A denial-of-service attack (DoS attack) or distributed denial-of-service attack (DDoS attack) is an attempt to make a computer resource unavailable to its intended users.
Although the means to carry out, motives for, and targets of a DoS attack may vary, it generally consists of the concerted efforts of a person or people to prevent an
Internet site or service from functioning efficiently or at all, temporarily or indefinitely. Perpetrators of DoS attacks typically target sites or services hosted on high-profile web
servers such as banks, credit card payment gateways, and even root nameservers. The term is generally used with regards to computer networks, but is not limited to this
field, for example, it is also used in reference to CPU resource management.
One common method of attack involves saturating the target (victim) machine with external communications requests, such that it cannot respond to legitimate traffic, or
responds so slowly as to be rendered effectively unavailable. In general terms, DoS attacks are implemented by either forcing the targeted computer(s) to reset, or
consuming its resources so that it can no longer provide its intended service or obstructing the communication media between the intended users and the victim so that
they can no longer communicate adequately.
[quote][/quote]
***Parrotted from Wiki***
I cant break it, whatever rules M$ has implemented that tell it that my app is a known installer are very broad, I'll implement the last uac suggestion and wait for user feedback I think :/
oex,
You said Windows modifed the icon to include the admin shield, I'm thinking Windows has identified your installer app as OK, since it has (or had) a correct manifest.
I'm not sure about this.
I think I clicked some button to get windows to 'reinstall the app for me properly' after the installer had installed ok first time around.... It seems that this has in some way created a record of this installer somewhere some kind of a 'virtual manifest' (my words) as the .exe file hasnt been remodeled by windows (at least in size) and updated versions by myself still show the shield icon (I added repeated nulls, data in the data section and renamed the file but vista still shows a modified icon when I save the file to the desktop off the internet.
The new copy I have compiled with the uac manifest specified above does not have it's icon edited by windows when I save it