| |
|
|
Detlef Jagolski | Profan2Cpp - Version 1.5
Neues Projekt ---> Eingabe: D:Eigene DateienProfanSchneidplan_NeuSchneidplan.prf Ausgabe: D:Eigene DateienProfanSchneidplan_NeuSchneidplan_cpp
Binde Include-Dateien ein... ok. Lese Header-Dateien... ok. Überprüfe Syntax... ok. Ersetze Header-Definitionen... ok. Erstelle Verzeichnisse... ok. Übersetze... ok. Erstelle PrfMain.cpp... ok. Kopiere Header... ok. Kopiere Bibliotheken... ok. Generiere Makefile... ok.
Projekt erfolgreich übersetzt! Warum erfolgreich, wenn der Code nicht läuft???? [2681 Zeilen in 2078 ms] CrogrammeDev-C++ing++.exe -c PrfMain.cpp -o .objPrfMain.o -ICrogrammeDev-C++include -ICrogrammeDev-C++includeg++ -fexceptions -s -mwindows -w -fvtable-thunks -fno-elide-constructors -LCrogrammeDev-C++lib -BCrogrammeDev-C++in CrogrammeDev-C++ing++.exe -c Schneidplan.cpp -o .objSchneidplan.o -ICrogrammeDev-C++include -ICrogrammeDev-C++includeg++ -fexceptions -s -mwindows -w -fvtable-thunks -fno-elide-constructors -LCrogrammeDev-C++lib -BCrogrammeDev-C++in Schneidplan.cpp: In function `struct p_variant proc_changemenuitem(int, ...): Schneidplan.cpp:1283: `menu undeclared (first use this function) Schneidplan.cpp:1283: (Each undeclared identifier is reported only once Schneidplan.cpp:1283: for each function it appears in.) Schneidplan.cpp:1283: parse error before `] Schneidplan.cpp:1283: parse error before `] Schneidplan.cpp:1283: parse error before `) Schneidplan.cpp:1284: parse error before `] Schneidplan.cpp:1284: parse error before `) Schneidplan.cpp:1285: parse error before `] Schneidplan.cpp:1285: parse error before `) Schneidplan.cpp:1286: parse error before `] Schneidplan.cpp:1286: parse error before `) Schneidplan.cpp:1287: parse error before `] Schneidplan.cpp:1287: parse error before `) CrogrammeDev-C++inmake.exe: *** [.objSchneidplan.o] Error 1 Finished.
Was, wie und wo muss ich Ändern, das der Code läuft???
Gruß Detlef |
|
|
| XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11 | 17.12.2005 ▲ |
|
|
|
|
| Du solltest die Stelle, welche falsch konvertiert wird, finden und hier posten - ich glaube anders wäre es sehr schwierig herauszufinden was an Deinem Code genau falsch übersetzt wird.
Ich glaube mit ein bisl Mithilfe wird man schnell feststellen können ob es ab Quelltext oder am Konverter liegt. |
|
|
| |
|
|
|
Detlef Jagolski | Hier einmal C++ und XProfan Code KompilierenMarkierenSeparierenp_variant proc_changemenuitem(int n, ...)
{
BuildStack();
long lHmenu = LongParam(1);
long lPmenu = LongParam(2);
long lIndex = LongParam(3);
long lFont = LongParam(4);
_LM(pMenuiteminfo, 1) = SizeOf(_O((pMenuiteminfo)));
_LM(pMenuiteminfo, 2) = 0x20L | 0x10L | 2;
_LM(pMenuiteminfo, 10) = _P(pMenutext);
_LM(pMenuiteminfo, 11) = SizeOf(pMenutext);
External(_S("user32.dll"), _S("GetMenuItemInfoA"), 4, _L(lHmenu), _L(lPmenu), _L(0x400L), _L(_P(pMenuiteminfo)));
strcpy(_SM(pAMenudata[menu % ], 33), p_string(_P(pMenutext), 0L), _SIZE(pAMenudata[menu % ], 33));
_LM(pAMenudata[menu % ], 34) = lIndex;
_LM(pAMenudata[menu % ], 35) = External(_S("user32.dll"), _S("GetSubMenu"), 2, _L(lHmenu), _L(lPmenu));
_LM(pAMenudata[menu % ], 36) = lFont;
_LM(pAMenudata[menu % ], 3) = _LM(pMenuiteminfo, 3);
if (_LM(pMenuiteminfo, 3) == 0x800L)
{
_LM(pMenuiteminfo, 3) = 0x100L;
_LM(pMenuiteminfo, 2) = 0x20L | 0x10L;
_LM(pMenuiteminfo, 9) = _P(pAMenudata[_L(nMenu)]);
External(_S("user32.dll"), _S("SetMenuItemInfoA"), 4, _L(lHmenu), _L(lPmenu), _L(0x400L), _L(_P(pMenuiteminfo)));
}
else
{
_LM(pMenuiteminfo, 3) = 0x100L;
_LM(pMenuiteminfo, 2) = 0x20L | 0x10L;
_LM(pMenuiteminfo, 9) = _P(pAMenudata[_L(nMenu)]);
_LM(pMenuiteminfo, 10) = _P(pMenutext);
External(_S("user32.dll"), _S("SetMenuItemInfoA"), 4, _L(lHmenu), _L(lPmenu), _L(0x400L), _L(_P(pMenuiteminfo)));
}
nMenu++;
return _V(0L);
}
KompilierenMarkierenSeparieren
Proc ChangeMenuItem
Parameters hMenu&, pMenu&, Index&, Font&
with MenuItemInfo#
.cbSize& = SizeOf(MenuItemInfo#)
.fMask& = ~MIIM_DATA | ~MIIM_TYPE | ~MIIM_ID
.dwTypeData& = MenuText#
.cch& = SizeOf(MenuText#)
endwith
~GetMenuItemInfo(hMenu&,pMenu&,~MF_BYPOSITION,MenuItemInfo#)
with MenuData#[Menu%]
.MenuText$ = String$(MenuText#,0)
.IconIndex& = Index&
.MenuPopUp& = ~GetSubMenu(hMenu&,pMenu&)
.MenuFont& = Font&
.fType& = MenuItemInfo#.fType&
endwith
If MenuItemInfo#.fType& = ~MFT_SEPARATOR
with MenuItemInfo#
.fType& = ~MFT_OWNERDRAW
.fMask& = ~MIIM_DATA | ~MIIM_TYPE
.dwItemData& = MenuData#[Menu%]
endwith
~SetMenuItemInfo(hMenu&,pMenu&,~MF_BYPOSITION,MenuItemInfo#)
Else
with MenuItemInfo#
.fType& = ~MFT_OWNERDRAW
.fMask& = ~MIIM_DATA | ~MIIM_TYPE
.dwItemData& = MenuData#[Menu%]
.dwTypeData& = MenuText#
endwith
~SetMenuItemInfo(hMenu&,pMenu&,~MF_BYPOSITION,MenuItemInfo#)
EndIf
Inc Menu%
EndProc
Gruß
Detlef |
|
|
| XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11 | 17.12.2005 ▲ |
|
|
|
|
Michael Dell | Hallole,
nach[quote:4cb2d33e67]Schneidplan.cpp: In function `struct p_variant proc_changemenuitem(int, ...): Schneidplan.cpp:1283: `menu undeclared (first use this function)[/quote:4cb2d33e67] zu Urteilen müsste der fehler hier liegen:
Statt:[quote:4cb2d33e67]Strcpy(_sm(Pamenudata[Menu % ], 33), ....[/quote:4cb2d33e67]das hier:[quote:4cb2d33e67]Strcpy(_sm(Pamenudata[Menu% ], 33), ....[/quote:4cb2d33e67] das Leerzeichen macht aus Menu% eine neue undeclarierte Variable, glaub ich. |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 18.12.2005 ▲ |
|
|
|
|
Sebastian König | Hallo Detlef,
sorry - ich habe den Beitrag hier gerade erst gesehen. Es sieht so aus, als käme Profan2Cpp mit der Zeile
With Menudata#[Menu%] nicht klar... ich habe schon eine Idee, woran das liegen könnte und werde mal nachsehen. Wahrscheinlich melde ich mich dann heute Abend wieder.
MfG
Sebastian |
|
|
| |
|
|
|
Sebastian König | so, ich denke, ich konnte das Problem finden und beheben - bei mir wird der Code-Abschnitt nun korrekt übersetzt.
Ich würde Dir zum Testen gern eine neue Profan2Cpp.exe schicken (es war eine Änderung an einer Funktion zum Übersetzen von Variablen-Namen nötig). An welche Adresse kann ich Dir die eMail den senden?
MfG
Sebastian
P.S.: ach, benutzt Du die Testversion oder die Vollversion von Profan2Cpp? |
|
|
| |
|
|
|
| Hallo Sebastian,
bitte an detlefjagolski@aol.com
und ich habe seit einer Woche eine Vollversion.
Danke und Gruß
Detlef |
|
|
| |
|
|