Nick



  • Hallo!
    Folgendes funktioniert bei mir nicht, vielleicht könnt ihr mir sagen wieso?
    Also, was ich damit machen will, ist folgendes:
    Ich arbeite mit Bilder,nun möchte ich ein Bild an Photoshop senden.
    Es funktioniert ja auch wenn ich StrParam=_T("C:\\Grafik\\Photoshp.exe"+filename), wobei filename=Bilddatei.jpg
    Aber wenn ich aus Browser es auswähle funktioniert das ganze nicht.
    Wo liege ich falsch?...
    Hier ist Code:

    void Blabla::bearbeitenmit()
                  PROCESS_INFORMATION pi; 
                  STARTUPINFO si; 
    
              ::GetStartupInfo(&si); 
    
              TCHAR szFile[MAX_PATH];
              ZeroMemory(szFile, MAX_PATH);
              OPENFILENAME ofn;
            ZeroMemory(&ofn, sizeof(OPENFILENAME));
            ofn.lStructSize = sizeof(OPENFILENAME);
            ofn.Flags       = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY|OFN_SHAREAWARE;
            ofn.lpstrFilter = _T("*exe\0*.exe\0");
            ofn.lpstrTitle  = _T("Bearbeiten mit...");
            ofn.lpstrFile   = szFile;
            ofn.nMaxFile    = MAX_PATH;
    
            if (IDOK == GetOpenFileName(&ofn))
             {
            CString StrParam = _T(szFile+filename) ; 
    
            if(!::CreateProcess(NULL    , 
            (LPTSTR)LPCTSTR(StrParam), 
            NULL, 
            NULL, 
            FALSE, 
            CREATE_DEFAULT_ERROR_MODE, 
            NULL, 
            NULL, 
            &si, 
            &pi 
            ) )
            { 
        AfxMessageBox("Fehler!!! ... konnte nicht gefunden werden!",0,0);
            }
    
        }
    

    Voraus Danke!!!



  • Vielleicht so:

    CString StrParam = _T("\""+szFile+"\" \""+filename+"\"") ;
    


  • nein, kommt Fehler :cannot add two pointers



  • CString StrParam = _T("\""+(CString)szFile+"\" \""+(CString)filename+"\"") ;
    


  • Danke!!!
    Bin ich froh, daß es doch funtioniert!!!
    Das wäre doch was für FAQ



  • Nöö, is nix für die FAQ, weil:
    1. In der MFC nimmt man CFileDialog statt GetOpenFileName
    2. In der API gibts CString net!



  • RenéG:
    Bei 1. muss ich dir widersprechen. Ich benutze auch immer GetOpenFileName, weil ich mit CFileDialog unter Win2k nicht den neuen Datei-Öffnen-Dialog hinbekomm, sondern immer nur den altbekannten aus Win9x ...


Anmelden zum Antworten