Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Pytanie o system("start nazwa pliku"):

Ostatnio zmodyfikowano 2009-12-23 21:16
Autor Wiadomość
Bartaz
Temat założony przez niniejszego użytkownika
Pytanie o system("start nazwa pliku"):
» 2009-12-23 14:06:12
Witam mam pytanie, mam takie polecenie do otwierania jakiegoś pliku
system("start nazwa pliku"):
i jak zrobić żeby użytkownik sam podawał nazwę pliku tak jak w zmiennych
żeby po słowie start było słowo podane w zmiennej ?
i jak ktoś zna to niech mi poda jakieś inne polecenia z system("...");
(Pisane w konsoli)
P-12408
malan
» 2009-12-23 14:26:06
Ogólnie rzecz biorąc funkcji system się nie używa. Można ją zastąpić: ShellExecute - wtedy rozwiązanie Twojego problemu będzie wyglądało mniej więcej tak:
C/C++
char nazwa_pliku[ 25 ];
//...
cin >> nazwa_pliku;

ShellExecute( uchwyt, "open", nazwa_pliku, NULL, NULL, SW_SHOW );
P-12409
Bartaz
Temat założony przez niniejszego użytkownika
...
» 2009-12-23 14:53:49
1-Dlaczego nie używa się system("...");
2-Co wpisać w wyrazie uchwyt? bo nie działa trzeba jakąś bibliotekę do tego śćiągnąć.
                 
P-12412
malan
» 2009-12-23 15:05:27
1. Chociaż by dlatego, że niektóre anty wirusy wykrywają programy z tą funkcją jako 'złośliwe oprogramowanie'. Zbytnio się nie wgłębiałem w to, czemu nie można jej używać ;p, ale na forum parę razy się przewijało (http://forum.ddt.pl/?Tid=1210).

2.
C/C++
#include <windows.h>
Zamiast uchwyt wpisz NULL.
P-12413
Bartaz
Temat założony przez niniejszego użytkownika
...
» 2009-12-23 15:18:17
Mam taki kod ale i tak mam błąd
C/C++
#include <iostream>
#include <conio.h>
#include <windows.h>
using namespace std;

int main()
{
    string Nazwa_pliku;
    SetConsoleTextAttribute( GetStdHandle( STD_OUTPUT_HANDLE ), FOREGROUND_GREEN | FOREGROUND_INTENSITY );
    cout << "Podaj nazwe pliku do otwarcia" << endl;
    cin >> Nazwa_pliku;
    ShellExecute( NULL, "open", Nazwa_pliku, NULL, NULL, WS_SHOW );
   
   
   
    system( "PAUSE" );
    return( 0 );
}


Błedy:
14 D:\Projekty\Projekty C++\main1.cpp `WS_SHOW' undeclared (first use this function)

  (Each undeclared identifier is reported only once for each function it appears in.)
P-12414
malan
» 2009-12-23 15:23:56
SW_SHOW
Sory, literówka ;p.
P-12415
Bartaz
Temat założony przez niniejszego użytkownika
...
» 2009-12-23 15:39:47
I tak jest błąd
ShellExecute(NULL,"open",Nazwa_pliku,NULL,NULL,SW_SHOW);

14 D:\Projekty\Projekty C++\main1.cpp cannot convert `std::string' to `const CHAR*' for argument `3' to `HINSTANCE__* ShellExecuteA(HWND__*, const CHAR*, const CHAR*, const CHAR*, const CHAR*, INT)'


EDIT
Już działa ale się nic nie otwiera.
P-12416
malan
» 2009-12-23 15:42:07
A gdzie Ty w moim pseudo kodzie widziałeś std::string ? ;>
P-12417
« 1 » 2 3
  Strona 1 z 3 Następna strona