Zum Inhalt springen

igurov

Mitglieder
  • Gesamte Inhalte

    25
  • Benutzer seit

  • Letzter Besuch

  1. Hallo Leute, ich habe eine konkrete Frage bezüglich MFC mit Worker Thread. Also, ich habe einen Button „Go“, der viele Dingen macht, und ich möchte in ihm einen Thread aufrufen, der die Function getCurrentPosition braucht. Ich habe auch ein Static Text wo das Ergebnis dieser Function etwa alle 0.5s. angezeigt wird. Daher brauche ich eine globale Function threadFunction. UINT threadFunction (LPVOID lparam) { Myclass* myobj = (Myclass *) lparam; CString status; if(myobj == NULL) return 1; else { for (int i = 0; i < 10; i++) { status = getCurrentPosition(); myobj->posVar.SetDlgItemTextW (staticText,static_cast<LPCTSTR>(status)); // posVar is control variable to the staticText } } return 0; } Jetzt möchte ich diese Funktion von dem Button „Go“ aufrufen void Myclass::OnBnClickedGo() { Myclass* newObj = new Myclass; CWinThread *pThread = AfxBeginThread (threadFunction,newObj); } So weit so gut, aber wenn ich den Button „Go“ klicke, erscheint der unten stehenden Debug Fehler: Debug Assertion Fehler Line 154 Winocc.cpp Und das ist passiert wenn das Porgram diese Linie probiert zu ausführen – myobj->posVar.SetDlgItemTextW (staticText,static_cast<LPCTSTR>(status)); Ich habe viel versucht, aber bis jetzt hat noch nichts geklappt. Hoffentlich hat jemand Idee wie ich das Problem lösen kann.
  2. Hallo, Ich versuchte MFC mit Threads zu implementieren, aber es hat nicht geklappt. Gibt es anderen Weg die zwei Funktionen (wegen zwei Buttons) nacheinander aufrufen zu können ohne warten zu müssen bis die erste fertig ist! Danke, IG
  3. Hi, Danke für die Antwort. Würdest du mir vielleicht ein Beispiel geben, wie man in diesem speziellen Fall den Thread verwendet (da ich gar keine Erfahrung mit Threads habe). Gruß, Ig
  4. Hallo Leute, Ich habe eine MFC Anwendung mit zwei Buttons, die die zwei nachstehenden getrennten Funktionen aufruft. void CUSBtoCANDlg::OnBnClickedHomeButton1() { int pos=movePos(ini, float(movePos) ); } void CUSBtoCANDlg::OnBnClickedHomeButton2() { int pos2=moveSecondRamp(ini, float(movePos) ); } Das Problem ist, wenn ich auf den ersten Button drücke, muss ich warten bis die movePos Funktion beendet ist. Erst dann kann ich den zweiten Botton drücken. Ich möchte nämlich die zwei Funktionen nacheinander aufrufen können ohne warten zu müssen bis die erste fertig ist! Haben Sie Ideen wie ich es machen kann? Danke, Iliya
  5. Hi, Leider geht es nicht bei mir. Es gibt zwei Fehler wenn ich den Projekt erstelle: extern CComboBox* asdComboModules; CString str; for (int i=0;i < 10;i++) { str.Format(_T("item string %d"), i); asdComboModules->AddString( str ); } error LNK2001: unresolved external symbol "class CComboBox * asdComboModules" (?asdComboModules@@3PAVCComboBox@@A) fatal error LNK1120: 1 unresolved externals Die Name meiner ComboBox is IDC_COMBO9. Wie kann ich vorgeben dass der Code mit genau IDC_COMBO9(nicht mit IDC_COMBO8) zu tun hat. Danke. Iliya
  6. Hallo, Ich habe eine sehr einfache Frage. Ich möchte eine Combo Box mit den Nummern von 1 bis 10 ausfüllen. Wie kann ich das erstellen? Für jede Hilfe wäre ich sehr dankbar, Iliya
  7. Hallo, Vielen Dank für die Antwort. Jetzt hat es geklappt. Kannst du mir bitte mitteilen, wo ich mehr info über MFC mit VS2005 finden kann. Grüße, Iliya
  8. Hallo, Ich habe keine Erfahrung mit MFC (VS 2005) und deswegen habe ich sehr einfache Fragen. Ich möchte eine Anwendung mit Edit Control, Button and Static Text erstellen - Wenn man einen Text im Edit Control eingeben und dann auf den Knopf drücken, muss diesen Text in dem Static Text angezeigt werden. void CCANDlg::OnEnChangeEdit1() { string input = (string )cell_var. GetString(); } void CCANDlg::OnBnClickedButton1() { // TODO: Add your control notification handler code here } Vielleicht können Sie mir helfen das zu machen. Danke, Iliya PS. Gibt es ein gutes Tutorial für MFC mit VS2005?
  9. Es gibt ein Problem mit "RECIPEID" LIKE :RECIPEID% wahrscheinlich wegen %. Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.
  10. Leider funkzioniert es nicht. Willst du wirklich den Select ändern wie folgt: SelectCommand='SELECT * FROM "RECIPE_ID" WHERE RECIPEID LIKE :RECIPEID||'%' ORDER BY "TOOL_ID"'> Servertag wurde falsch formatiert. Iliya
  11. Nein. Als ich hab geschrieben, brauche ich all recipeID die die gesuchte Reihung enthalten. Beispiel: Table:recipeId Column recipeID: cool cool2 cool3 Jetzt wenn ich ein Select mit RecipeId="cool" ausführe, ist das Ergebnis nur "cool". Das problem ist dass ich cool, cool2 and cool3 brauchen möchte, weil alle die Reihung "cool" enthalten. Gruß, Iliya
  12. Hallo, Ich hab eine einfache Implementation der Suche in Oracle Databank wie nachstehend: SelectCommand='SELECT * FROM "RECIPE_ID" WHERE ("RECIPEID" = :RECIPEID) ORDER BY "TOOL_ID"' zum Beispiel: 1.Suchen nach recipeID: coolId Suche Ergebnis: coolId Aber brauche ich alle RecipeId als Ergebnis die die gesuchte Reihung enthalten. zum Beispiel: 1.Suchen nach recipeID: coolId Suche Ergebnis: coolId, coolid2,coolid_late etc. Wie kann ich den Select Befehl verbessern? Danke, Iliya
  13. Ich brauche die letzten 5 Daten jeden Tag als Parameter verwenden. Wenn ich deine Lösung realisiren, muss ich das Skript jeden Tag verändern. Daswegen brauche ich ein externes Anwendung: if (args[0] == "current") { DateTime dt = DateTime.Now; string tostring = dt.ToString("yyyyMMdd"); Console.WriteLine("{0}", tostring); number = int.Parse(tostring); } if (args[0] == "previous") { DateTime dt = DateTime.Now.AddDays(-1); ; string tostring = dt.ToString("yyyyMMdd"); Console.WriteLine("{0}", tostring); number = int.Parse(tostring); } ...... und dann: em Ausführung das date_string.exe Programm und spreichern das Ergebnis in einem temporalen temp.txt File C:\temp\date_string.exe "current" > temp.txt rem festelegen die variable datum set /p datum= < temp.txt echo Backup Folder Dates to be exported... echo %datum% rem entfernen das temp.txt File del temp.txt C:\temp\date_string.exe "previous" > temp.txt set /p datum1= < temp.txt echo %datum1% del temp.txt .... Meinst du nicht auch? Gruß, Iliya
  14. Perfekt! Jetzt funktioniert es. Ich brauche den datumstring in diesem Format weil ich es weiter in dem Programm benutzen. Vielen Dank, Iliya
  15. Hallo, Ich habe ein kleines Programm für Konvertit das aktualle Datum in einer Reihung. static int Main(string[] args) { DateTime dt = DateTime.Now; string tostring = dt.ToString("yyyyMMdd"); Console.WriteLine("{0}", tostring); return int.Parse(tostring); } Jetzt möchte ich dieses Ergebnis als eine Datumvariable in .cmd Scrpit nutzen. @ECHO OFF copy "C:\Program Files\Microsoft Visual Studio 8\VC#\CSharpProjects\date_string\date_string\bin\Release\date_string.exe" c:\temp set variable=c:\temp\date_string.exe set AGCLOG="C:\RCP VIEWER PARSER\report.txt" echo Setting the variable... echo --- start -------- >> %AGCLOG% echo %variable% >> %AGCLOG% pause Wenn ich das report.txt öffnen, ist das Ergebnis den entstehenden Text: --- start --------------------------------------------------------------------- c:\temp\date_string.exe Das Problem ist dass die Varialbe die Resultat von dem Programm nehmen muss. Mit diesem code set variable=c:\temp\date_string.exe ist aber leider die Variable = c:\temp\date_string.exe stattdessen = 20080806 Gruß Iliya

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...