Alles bestens, Danke Jetzt kann's weitergehen. Früher wär mir sowas garnicht aufgefallen. Da kam ich selten über 10 Fktn. hinaus. Falls ich mich ohne Deinen Crashkurs überhaupt an Asm herangewagt hätte...:-)
Gruss
Matthias
Alles bestens, Danke Jetzt kann's weitergehen. Früher wär mir sowas garnicht aufgefallen. Da kam ich selten über 10 Fktn. hinaus. Falls ich mich ohne Deinen Crashkurs überhaupt an Asm herangewagt hätte...:-)
Gruss
Matthias
So ein Feedback freut mich natürlich!
Schadet ja auch nie, seinen Horizont etwas zu erweitern.
Hi Frank,
hab eben noch was entdeckt. XPIA "verschluckt" irgendwie die Funktion "SytemParametersInfo". Übergebe ich folgenden Code:
...
LOCAL rect:RECT
invoke SystemParametersInfo, SPI_GETWORKAREA, NULL, addr rect, NULL
.if eax != 0
mov ecx,rect.right
mov edx,rect.bottom
...
macht XPIA daraus
...
LOCAL rect:RECT
push ebx
push edi
push esi
.if eax != 0
mov ecx,rect.right
mov edx,rect.bottom
...
Schon fast am Verzweifeln hab ich mir dann die *.asm mal angesehen.
Auch ein Umbenennen der Funktion in der basic.inc brachte keinen Erfolg.
Das Problem besteht ebenfalls schon bei XPIA3 (um JWASM auszuschliessen).
Gruss, Matthias
ZitatSchon fast am Verzweifeln hab ich mir dann die *.asm mal angesehen.
Auch ein Umbenennen der Funktion in der basic.inc brachte keinen Erfolg.
Das Problem besteht ebenfalls schon bei XPIA3 (um JWASM auszuschliessen).
Ah, sehe es schon. Hab einen kleinen Bug entfernt und eine neue XPIA-Exedatei auf meiner Seite hochgeladen.
Also prompter kann Support kaum sein.:-)
Aber das war's wohl doch noch nicht. Jetzt geht die Funktion zwar durch, dafür werden aber Teile des Profan-Codes mit in die .asm übernommen, was zu jeder Menge Fehlemeldungen führt...
Gruß Matthias
Oh, einen Bug beseitigt und zwei weitere eingebaut...
Ich sehs mir heute abend mal in Ruhe an. Kannst du eventuell ein Stück betroffenen Quellcodes posten?
Wem sagst Du das.... Aber in der Ruhe liegt die Kraft, ich bin da ganz zuversichtlich;)
So, jetzt sollte der Bug im Bugfix auch behoben sein.
Hab die neue Exe wieder hochgeladen.
Spitze ...und das am Freitag-Abend. Wo findet man das sonst noch...
Das hilft mir doch sehr viel weiter. Wenn ich 'nen Orden zu vergeben hätte...;)
Danke und erstmal ein schönes WE
Matthias
Glatt nurmehr halb so groß, und das ist dann ein Bugfix? O.o WOW
Ja, dank UPX.
Ähm.. ah ja.. Dazu fällt mir ein, gibts schon irgendwo ein GLOSSAR für API-Ausdrücke? Man fühlt sich in diversen Threads manchmal so furchtbar doof, da wärs doch gut wenn man wo nachschlagen könnte! Ich vermute, im allgmeinen Computer-Glossar steht solches Spezialistenwissen eher nicht.
((Vorfrage, bevor ich da womöglich was auf eigene Faust versuche: Gibt es in diesem Board eine Art öffentliches Brett, das einfach ALLE editieren können, also z.B. jeder der zu einer alphabetischen Liste was beitragen möchte, und alles in einem Bereich wie der in dem ich gerade schreibe?))
Gruss
UPX ist ein Pack-Programm für Exe-und Dll-Dateien.
Du könntest mal nachsehen, ob die Infothek hier dir eine ausreichende Plattform bietet.
Ich habe die Datei XPIA.zip entpackt (mit den Pfadangaben) in das Verzeichnis D:\XProfan11.
Das heisst: im Verzeichnis XProfan11 ist nun das Verzeichnis xpia_dir (mit allem Inhalt).
Im Verzeichnis XProfan11 befinden sich die beiden Programme xpia.exe und xprr.exe).
(Ich habe auf D: installiert, weil sonst die Installation von XProfan11 bei Windows 7 in irgendein komisches Verzeichnis auf C: erfolgt. Entweder Programme oder Programme (x86) was dann Probleme machen kann, weil die Verzeichnisse tatsächlich bei Windows 7 andere Namen haben).
XPSE ist nicht installiert (brauche ich vermutlich jetzt nicht mehr?)
Somit nehme ich an, dass die Installation soweit in Ordnung ist.
Wenn ich im Dos Fenster den Pfad auf
D:\XProfan11
setze und folgenden Befehl eintippe:
XPIA.exe D:\XProfan11\xpia_dir\examples\Addieren.prf
kommen im Dos Fenster folgende Meldungen:
---------
XPIA 4.13 r 2009 Frank Abbing (Frank Abbing's Webpage)
Fehler: -> Es konnte nicht genug Speicher reserviert werden.
---------
und im Verzeichnis D:\XProfan11\xpia_dir\examples\ wurde eine Datei Addieren.enhmap mit 0 Bytes erstellt.
Ich habe die originale unveränderte Datei Addieren.prf benutzt.
Die Ausrüstung:
Notebook mit Windows 7 Home Premium (64 Bit)
AMD Turion II Dual-Core Mobile M520, 2300 MHz
Hauptspeicher 4GB
Ich habe XPIA ebenso auf einem anderen Notebook unter Windows XP Professional installiert und dort wird der oben beschriebene Aufruf erfolgreich ausgeführt.
Wo könnte bei Windows 7 das Problem liegen (wegen 64 Bit?)
Mfg Gerhard.
Deutet auf Speichermangel hin oder auf Probleme damit
Ich hatte dieses Jahr auch noch deswegen ein Update für Jac gemacht, probier diese neuste Exe mal:
Hallo Frank,
auch mit dem neuen XPIA.exe ist es das gleiche Problem.
Aber, wie immer, ich habe ja noch ein XP und da funktionierts.
Somit ist es mir egal wenn es auf W7 nicht geht.
Danke.
Gerhard.
Es funktioniert bei mir aber unter Windows 7, das sollte nicht das Problem sein. Ist sicher (wieder mal) eine Geschichte der Rechteverteilung. Eine Unterdatei konnte nicht erstellt werden vom internen Precompiler in XPIA oder Assembler/Compiler.
Ich verstehe auch nicht, warum du XPIA von Hand aus aufrufen willst. Lass das den Editor doch machen, der dürfte über die Rechte verfügen, wenn er die Sourcecodes speichern kann.
Zitat von Frabbing;793888
Ich verstehe auch nicht, warum du XPIA von Hand aus aufrufen willst. Lass das den Editor doch machen, der dürfte über die Rechte verfügen, wenn er die Sourcecodes speichern kann.
XProfEd hat keine passende Manifest für Vista Usermode, es läuft also die
Virtualisierung, die sich insofern bemerkbar macht, das bei mangel an Rechten
wird nach VirtualStore gespeichert, und zwar so, das der Editor oder andere
Programme, die nicht im Usermode laufen, das nicht bemerken!
Da liegt dann oft der Hase im Pfeffer
Gruß
Thomas
// edit
so sieht eine manifest für vista und 7 aus, damit nicht virtualisiert wird:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="CompanyName.ProductName.YourApp"
type="win32" />
<description></description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*" />
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="asInvoker"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
Alles anzeigen
Ich lese gerade: Nicht nur für 32bit, auch für 64 bit gültig. Existiert seit Windows XP. Die Dateiendung lautet wie der volle "Dateinahme.Erweiterung" + zusätzlicher Punkt + "manifest", ausgeschrieben. Gilt auch bei Home-Versionen, kann das System aber bei schlechter manifest-Dateien-Struktur (XML) vollständig lähmen und Neuinstallation erforderlich machen.
Gruss
Am besten direkt mit Resourcenhacker & Co als Resource 24 einbinden.
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!