![]() |
32bit Service auf 64bit Platform
Hallo,
ist das prinzipiel möglich? Sind Probleme zu erwarten - auf was muss ich besonders achten? Würde den Service mit TService aufbauen wollen. Ich frage weil das Zielsystem Windows2008 64bit ist, ich aber kein 64bit System zum Testen habe. Grüße Klaus |
AW: 32bit Service auf 64bit Platform
Ich hatte mit meinen Diensten bisher weder unter Vista, Windows7 oder Server 2008 (R2) Probleme.
Unter XP 64 habe ich keine Erfahrungen. |
AW: 32bit Service auf 64bit Platform
Dienste sind normale Programme und 32bit Dienste werden daher auch mit WOW64 ausgeführt, wie jedes normale 32bit Programm.
|
AW: 32bit Service auf 64bit Platform
Wenn du nichts falsch machst (Hard Codierte Verzeichnisangaben, ...) dann läuft dein Code problemlos
|
AW: 32bit Service auf 64bit Platform
Hallo,
danke für die Antworten, dann kann ich es ja angehen. Grüße Klaus |
AW: 32bit Service auf 64bit Platform
Zitat:
|
AW: 32bit Service auf 64bit Platform
Ich bestreite die Ausführungen der Vorredner nicht, habe allerdings bei etwas solch simplem wie dem Modulschnappschuß bereits negative Erfahrungen gesammelt: Bei dem nützten auch Administratorrechte eines 32-Bit-Programmes unter Windows (7) 64 Bit (vermutlich auch bei anderen 64-Bit-Windows) nicht, um vollständige Informationen (d.h., über jeden Prozeß, auch die Systemprozesse) einlesen zu können. Mithin griff ich zu Lazarus, dessen 64-Bit-Compilat die gewünschten Funktionen bot.
Zitat:
|
AW: 32bit Service auf 64bit Platform
Zitat:
|
AW: 32bit Service auf 64bit Platform
Zitat:
Irgendetwas muß an diesen Prozessen anders sein (Ring 0?); ich nenne sie, wohl nicht ganz korrekt, Systemprozesse. |
AW: 32bit Service auf 64bit Platform
Alles klar ;)
Zitat:
"System" ist kein Prozeß und kann auch nicht abgeschossen werden. Genau wie der "Leerlaufprozeß" (aka "Idle process"), der ebenfalls nur ein Pseudo-Prozeß ist. "System" repäsentiert in gewisser Weise den NT-Kernel und die darin geladenen Treiber. Hat einfach was mit dem Scheduling zu tun. Zitat:
Nachtrag: mit Ring 0, aka Kernelmodus, hat das nicht viel zu tun. Üblicherweise hat fast jeder Thread (außer reine Kernelthreads) etwas sowohl in Ring 0 als auch in Ring 3 zu erledigen. Und da Prozesse im Grunde nur Threads "gruppieren", ist die Aussage auf Prozesse insoweit anwendbar. Es gibt aber auch gewisse Ausnahmen wo die Grenze (insbesondere beim Start) verschwimmt, bspw. smss.exe |
AW: 32bit Service auf 64bit Platform
Für diese ausführliche und m.E. auch plausible Antwortmühe gibt es von mir ganz einfach nur ein dickes Dankeschön!
|
AW: 32bit Service auf 64bit Platform
Hallo Assarbad, entschuldige bitte, daß ich diese angestaubte Diskussion noch einmal aufwärme!
Zitat:
Oder weißt Du auch hier genaueres? Gruß Delphi-Laie |
AW: 32bit Service auf 64bit Platform
Meist ist es so, dass der Programmierer etwas falsch macht, wenn da was nicht zu gehen scheint. Aber vllt. zeigst du mal, wie du es programmiert hast?
Der ProcessExplorer kommt als 32bit EXE auf die Platte, besitzt aber in der Ressource weitere Dateien, wie einen Treiber und eine 64bit Version, die dann mehr oder weniger transparent gestartet wird. Im ProcExp sieht man selbst, dass da zwei Prozesse gestartet werden und der letzte procexp64.exe heißt. |
AW: 32bit Service auf 64bit Platform
Zitat:
Ob ich etwas falsch mache? Nun, unter 32 Bit funktioniert alles tadellos, und zwar mit meinem Programm mit dem billigen Namen "Prozesse" (auch hier im Forum zu finden). Aber wenn beim Prozeßexplorer zusätzlich etwas "64-bittiges" gestartet wird, dann ist mir die Ursache schon klar. Ich werde es mal genauer recherchieren, was unter 64 Bit alles im Speicher auftaucht. Gruß Delphi-Laie |
AW: 32bit Service auf 64bit Platform
Mit vollen Rechten solltest du auch in der Lage sein 64bittige Prozesse abzuschießen. Allerdings wenn deine Methode des Abschusses ist, Code zu injizieren wird es nix, solange du eine DLL benutzt. Dann brauchst du mindestens eine 64bittige DLL.
Ansonsten hat Christian völlig recht. Der ProcExp benutzt mehrere EXE-Dateien (und SYS-Dateien) welche extrahiert werden. BinResTo, meine Funktion von vor ein paar Jahren bildet das nach, aber es gibt auch andere Varianten welche VCL-Klassen benutzen. |
AW: 32bit Service auf 64bit Platform
Zitat:
Hallo Assarbad, auch Dir vielen Dank! Zitat:
Zitat:
Zitat:
Schöne Weihnachten! Edit: Kommando zurück. Nach dem Start des Prozeßexplorers (32 Bit) unter 64 Bit gebiert dieser anscheinend ein 64-Bit-Pendant, legt es auf der Platte ab und startet dieses. |
AW: 32bit Service auf 64bit Platform
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Zitat:
Zitat:
Zitat:
Frohes Fest. |
AW: 32bit Service auf 64bit Platform
Zitat:
Zitat:
Zitat:
Ich war eben nur irritiert, weil es schien, daß ein 32-Bit-Programm maximale bzw. maximal mögliche Rechte unter 64 Bit hatte. Dem ist wohl doch nicht so. Ich bin beruhigt. Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz