| |
|
|
Normann Strübli | Hallo Community,
ich bräuchte da mal bitte Eure Mithilfe.
Das Problem ist wirklich einfach ;D
Ich übersetze mit Profan2cpp den folgenden Quelltext. Leider stürzt die generic.exe beim Aufruf bei mir gnadenlos ab .
Bei Sebastian funktioniert die gleiche File ganz wunderbar, nun wäre es nett wenn Ihr die angehängte File einfach mal testet und eine kurze Antwort schreibt, bitte auch mit angeben welches Betriebssystem ihr benutzt.
Vielleich läßt sich ja so herausfinden ob das Problem wirklich nur bei mir Auftritt, glaub ich aber nicht
Saluto Normann KompilierenMarkierenSeparieren $H windows.ph
$H structs.ph
$H messages.ph
struct TWindowClass = ~WndClass
struct TMsg = ~Msg
declare WindowClass#, Msg#
declare AppName$
AppName$ = Generic
proc WindowProc
parameters Window&, Message&, WParam&, LParam&
if Message& = ~wm_Destroy
~MessageBox(0,... und Tschüß!,Nun denn ..,0)
~PostQuitMessage(0)
endif
return ~DefWindowProc(Window&, Message&, WParam&, LParam&)
endproc
proc WinMain
declare Window&, Message&
dim WindowClass#,TWindowClass
dim Msg#,TMsg
with WindowClass#
.style& = 0
.lpfnWndProc& = ProcAddr(WindowProc,4)
.cbClsExtra& = 0
.cbWndExtra& = 0
.hInstance& = %HInstance
.hIcon& = ~LoadIcon(0,~idi_Information)
.hCursor& = ~LoadCursor(0, ~idc_Arrow)
.hbrBackground& = ~GetStockObject(~white_Brush)
.lpszMenuName& = Addr(AppName$)
.lpszClassName& = Addr(AppName$)
endwith
if ~RegisterClass(WindowClass#) = 0
~MessageBox(0,Fenster konnte nicht registriert werden!,Fehler,0)
end
endif
Window& = ~CreateWindowEx(
0,
Addr(AppName$),
Addr(AppName$),
~ws_OverlappedWindow,
~cw_UseDefault,
~cw_UseDefault,
~cw_UseDefault,
~cw_UseDefault,
0,
0,
%HInstance,
0)
~ShowWindow(Window&, ~sw_ShowNormal)
~UpdateWindow(Window&)
~MessageBox(0,Ein minimales Windowsprogramm,Hallo,0)
while ~GetMessage(Msg#, 0, 0, 0) > 0
~TranslateMessage(Msg#)
~DispatchMessage(Msg#)
endwhile
end
endproc
end
|
|
|
| |
|
|
|
Georg Hovenbitzer | Hallo Normann,
bei mir corre das Programm ohne Probleme, sei es deine EXE oder der von mir mit Profan2CPP 1.5 übersetzten Version.
Ein ganz großes Problem gibt es aber, das Programm wird nicht aus dem Speicher entfernt, besser gesagt nicht richtig beendet. Man findet es im Task Manager unter Prozesse. Es verbraucht zwar keine CPU aber dafür Speicher und dies per jeden Aufruf.
Getestet unter WinXP Pro SP2 und Win2000 SP4. |
|
|
| Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a) | 30.11.2005 ▲ |
|
|
|
|
Sebastian König | Hallo Georg,
Georg Hovenbitzer
Ein ganz großes Problem gibt es aber, das Programm wird nicht aus dem Speicher entfernt, besser gesagt nicht richtig beendet. Man findet es im Task Manager unter Prozesse. Es verbraucht zwar keine CPU aber dafür Speicher und dies per jeden Aufruf.
das war bei mir zu Beginn auch so - ein Set(FastMode,1) am Anfang des Codes müsste wenigstens das schonmal beheben...
MfG
Sebastian |
|
|
| |
|
|
|
Sebastian König | Ciao,
ich wollte nur die allgemeine Aufmerksamkeit nochmal auf diesen Thread lenken
Hat es noch jemand getestet? Für mich das genze nämlich leider ein großes Rätsel, da ich das Problem einfach nicht reproduzieren kann . Falls außer Normanns noch weitere Systeme davon betroffen sind, lässt sich ja vielleicht eine Gemeinsamkeit feststellen *hoff*...
Vielen Dank schonmal und schönes Rest-Wochenende,
MfG
Sebastian |
|
|
| |
|
|
|
Normann Strübli | Uhm... Hallo??? |
|
|
| |
|
|