CYFROWY BARON • PROGRAMOWANIE • Zobacz wątek - Kopiowanie plików do/z zasobów udostępnionych

Kopiowanie plików do/z zasobów udostępnionych

dział ogólny

Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez samurai-jerry » wtorek, 5 lipca 2011, 16:54

Witam,

Mam pytanie odnośnie kopiowania plików (katalogów także) wg zasady podanej przez Cyfrowego Barona z tego linku: http://programowanie.cal.pl/cyfbar/api2.html#api5

Chodzi mi (tak jak w temacie) jak można użyć tej zasady do:
1.
Skopiowania pliku "test.txt" z -dajmy na to- jakiegoś lokalnego folderu do zasobu udostępnionego np.
KOD cpp:     UKRYJ  
CopyFile(("C:\\Katalog_zrodlo\\test.txt").c_str(), ("\\\\PC_CEL\\Katalog_cel\\").c_str(), false);


Niestety...
Po skompilowaniu i napotkaniu linii
KOD cpp:     UKRYJ  
CopyFile(("C:\\Katalog_zrodlo\\test.txt").c_str(), ("\\\\PC_CEL\\Katalog_cel\\").c_str(), false);

program wyrzuca Error z komunikatem, że zostały naruszone prawa dostępu do katalogu...

2.
Skopiowania pliku z zasobu udostępnionego do zasobu udostępnionego, np.
KOD cpp:     UKRYJ  
CopyFile(("\\\\PC_ZRODLO\\Katalog_zrodlo\\").c_str(), ("\\\\PC_CEL\\Katalog_cel\\").c_str(), false);


To dlaczego wyrzuca błąd o próbie nieautoryzowanego dostępu do zasobu to zdaję sobie sprawę dlaczego tak się dzieje. Nie wiem natomiast jak ustawić parametry kopiowania tak, żeby ten dostęp był -albo autoryzowany, -albo po prostu wymuszony, ale możliwy.

Bardzo proszę o odpowiedź. Szukałem tutaj na forum, ale jedynie co znalazłem to porady dotyczące kopiowania przez FTP.
Czy jest możliwy taki rodzaj kopiowania plików o którym powyżej napisałem? Czy może lepiej od razu zrezygnować z tego rodzaju kopiowania plików (i katalogów) i wykonać kopiowanie tak jak to się praktykuje czyli np. przez FTP. (tyle że używając sposobu o jaki pytam-standardowe kopiowanie plików byłoby mi prościej to zaimplementować).

Bardzo proszę o choćby jakieś skrawki informacji na ten temat!

Z góry bardzo dziękuję i pozdrawiam! samurai-jerry
"No pain no gain" - Scorpions
Avatar użytkownika
samurai-jerry
Bladawiec
Bladawiec
 
Posty: 24
Dołączył(a): sobota, 19 lutego 2011, 19:04
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: W98,W2K,WXP
Kompilator: Borland C++ Builder v6.0 Personal
wxDevCpp v.6.9
ChromeIDE+Masm32
KDevelop
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez samurai-jerry » środa, 6 lipca 2011, 11:17

Zadam trochę inaczej pytanie:
Jak można NAJEFEKTYWNIEJ wymienić pliki (katalogi) przez sieć używając do tego celu protokołu FTP lub HTTP? Dodam, że chodzi o zwykłą wymianę (ściąganie lub wysyłanie) plików, nie są potrzebne do tego celu żadne fajerwerki typu "latające foldery" lub oprawa graficzna. Chodzi o szybkość przeprowadzonej operacji.
Muszę zrobić w miarę bezawaryjny i szybki moduł wymiany plików.
Proszę mi pomóc! :roll: :roll: :zawiedziony: Nie potrzebuję zaraz całego kompletnego kodu (chociaż jakiś przykład byłby mile widziany) , wystarczy mi jakieś hasło, link do postu gdzie to było już poruszane.
"No pain no gain" - Scorpions
Avatar użytkownika
samurai-jerry
Bladawiec
Bladawiec
 
Posty: 24
Dołączył(a): sobota, 19 lutego 2011, 19:04
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: W98,W2K,WXP
Kompilator: Borland C++ Builder v6.0 Personal
wxDevCpp v.6.9
ChromeIDE+Masm32
KDevelop
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez polymorphism » środa, 6 lipca 2011, 11:22

Jeśli chodzi o klienta FTP/HTTP, to możesz do tego celu użyć funkcji biblioteki wininet. Przeszukaj forum, bo było parę wątków z tą biblioteką związanych.
C++ Reference - opis wszystkich klas STL-a i funkcji C.

Za ten post autor polymorphism otrzymał podziękowanie od:
samurai-jerry
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2156
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 200
System operacyjny: Windows 8.1
Windows 10
Linux Mint 21.1
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez samurai-jerry » środa, 6 lipca 2011, 11:39

Ok. Przeszukam. WIELKIE DZIĘKI polymorphism za szybką odpowiedź.
"No pain no gain" - Scorpions
Avatar użytkownika
samurai-jerry
Bladawiec
Bladawiec
 
Posty: 24
Dołączył(a): sobota, 19 lutego 2011, 19:04
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: W98,W2K,WXP
Kompilator: Borland C++ Builder v6.0 Personal
wxDevCpp v.6.9
ChromeIDE+Masm32
KDevelop
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez samurai-jerry » środa, 6 lipca 2011, 14:13

Mam jeszcze takie pytanie:
Załóżmy, że nazwa mojego komputera hosta to: PC1
Nazwa user'a: user1
hasło user'a: haslo1

Jak dokładnie powinny wyglądać pola do uzyskania autoryzowanego logowania dla powyższych danych?
Chodzi mi tylko o to jak ma wyglądać poprawna składnia dla pól "properties" dla IdFTP dla: Host, User, Password.
"No pain no gain" - Scorpions
Avatar użytkownika
samurai-jerry
Bladawiec
Bladawiec
 
Posty: 24
Dołączył(a): sobota, 19 lutego 2011, 19:04
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: W98,W2K,WXP
Kompilator: Borland C++ Builder v6.0 Personal
wxDevCpp v.6.9
ChromeIDE+Masm32
KDevelop
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez polymorphism » środa, 6 lipca 2011, 14:45

Jak to składnia? Hasło i użytkownika dajesz normalnie, a hosta podajesz w postaci adresu IP.
C++ Reference - opis wszystkich klas STL-a i funkcji C.

Za ten post autor polymorphism otrzymał podziękowanie od:
samurai-jerry
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2156
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 200
System operacyjny: Windows 8.1
Windows 10
Linux Mint 21.1
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez samurai-jerry » środa, 6 lipca 2011, 15:44

polymorphism napisał(a):Jak to składnia? Hasło i użytkownika dajesz normalnie, a hosta podajesz w postaci adresu IP.


Tzn. Host'a mogę dać w postaci adresu IP, albo np. \\\\PC1\\ (zakładając, że mój komputer widziany w sieci posiada nazwę: PC1)
Chodzi mi o to, czy mogę wpisać:
PC1
czy
\\\\PC1\\
czy
\\PC1\

Może się mylę, ale nazwę hosta można chyba podać w postaci liczbowej np. 127.0.0.1 albo po nazwie czyli tutaj jako localhost i tak samo dla innych nazw komputerów widzianych w sieci. Mi chodzi o to czy w okienku Edit (w już skompilowanym i uruchomionym programie) wpisuję (bez cudzysłowów) "localhost" czy "\\localhost\"

Dzięki za szybką odpowiedź co do nazwy i hasła użytkownika. Nie wiem czemu logowanie ftp nie chce mi działać. Posiłkuję się kodem zaczerpniętym z tego postu: http://www.programowanie.cal.pl/forum/viewtopic.php?f=16&t=776&hilit=wininet&start=15#p4830
"No pain no gain" - Scorpions
Avatar użytkownika
samurai-jerry
Bladawiec
Bladawiec
 
Posty: 24
Dołączył(a): sobota, 19 lutego 2011, 19:04
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: W98,W2K,WXP
Kompilator: Borland C++ Builder v6.0 Personal
wxDevCpp v.6.9
ChromeIDE+Masm32
KDevelop
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez samurai-jerry » środa, 6 lipca 2011, 16:31

Wiem, że się powtórzę, ale co tam... zapytam raz jeszcze, bo jest to dla mnie bardzo ważne:
1. Czy można funkcją CopyFile() kopiować plik z lokalnego katalogu do udostępnionego zasobu sieciowego (czyli innego katalogu nawet jeśli jest on na tym samym dysku twardym)?
2. Jak powinna wyglądać wtedy składnia polecenia? czy może wyglądać ona tak:
KOD cpp:     UKRYJ  
CopyFile("C:\Test_dir\testfile.txt", "\\\\Host_test\\Zasob_test\\", false);


Muszę zrobić niby prostą rzecz - tzn. skopiować plik do określonego zasobu sieciowego, a potem go stamtąd pobrać.
Nie bardzo chcę używać do tego protokołu FTP i "bawienia się" z wininit.h jeśli to naprawdę nie jest konieczne w tym wypadku.

Bardzo proszę o pomoc!
"No pain no gain" - Scorpions
Avatar użytkownika
samurai-jerry
Bladawiec
Bladawiec
 
Posty: 24
Dołączył(a): sobota, 19 lutego 2011, 19:04
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: W98,W2K,WXP
Kompilator: Borland C++ Builder v6.0 Personal
wxDevCpp v.6.9
ChromeIDE+Masm32
KDevelop
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez Cyfrowy Baron » środa, 6 lipca 2011, 16:45

Można, przy czym w adresie pliku docelowego podajesz tylko pełną nazwę komputera. Załóżmy, że mam grupę roboczą DOM i komputer w sieci o pełnej nazwie Cyfbar i opisie Cyfrowy Baron. W otoczeniu sieciowym w grupie roboczej DOM pojawi się komputer o nazwie Cyfrowy Baron (Cyfbar). podajac adres do pliku podajesz pełną nazwę komputera, czyli Cyfbar, a nie jego opis czyli Cyfrowy Baron:

KOD cpp:     UKRYJ  
CopyFile(L"c:\\temp\\test.txt", L"\\\\Cyfbar\\Temp\\test.txt", false);


Grupy roboczej nie podajesz.

samurai-jerry napisał(a):
KOD cpp:     UKRYJ  
CopyFile("C:\Test_dir\testfile.txt", "\\\\Host_test\\Zasob_test\\", false);


Masz tutaj błędy:

Jest: "C:\Test_dir\testfile.txt"
Powinno być: "C:\\Test_dir\\testfile.txt"

Jest: "\\\\Host_test\\Zasob_test\\"
Powinno być: "\\\\Pełna_nazwa_komputera\\Zasob_test\\nazwa_pliku.roz"

Za ten post autor Cyfrowy Baron otrzymał podziękowanie od:
samurai-jerry
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Kopiowanie plików do/z zasobów udostępnionych

Nowy postprzez samurai-jerry » środa, 6 lipca 2011, 17:04

:D :x Hurra! :) :D :x

Działa!

WIELKIE WIELKIE DZIĘKI Cyfrowy Baronie!!!

Pozdrawiam! samurai-jerry
"No pain no gain" - Scorpions
Avatar użytkownika
samurai-jerry
Bladawiec
Bladawiec
 
Posty: 24
Dołączył(a): sobota, 19 lutego 2011, 19:04
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: W98,W2K,WXP
Kompilator: Borland C++ Builder v6.0 Personal
wxDevCpp v.6.9
ChromeIDE+Masm32
KDevelop
Gadu Gadu: 0
    Windows XPFirefox


  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 12 gości