Avatar billede Husejer Nybegynder
18. maj 2014 - 10:20 Der er 7 kommentarer

kan man datolåse en fil, så den først kan åbnes på fødselsdagen hos modtager ?

Jeg vil gerne sende en fødselsdagshilsen til en ven, og gerne i god tid, så han kan se "pakke" (filen) i sin modtagede mail. men filen må naturligvis ikke kunne åbnes - og læses før "på dagen".
Kan dette lade sig gøre i f.eks word, powerpoint ell. lign??

vh

Husejeren
Avatar billede pstidsen Novice
18. maj 2014 - 11:09 #1
Du kan i hvert fald planlægge afsendelse af mailen, men det lyder ikke til at opfylde dine ønsker?
Avatar billede claes57 Ekspert
18. maj 2014 - 11:49 #2
Du kan zippe filen, og bruge adgangskode. Adgangskoden mailer du på dato som pstidsen skriver.
18. maj 2014 - 16:31 #3
HEJ,

Du kunne bruge en høj-niveau sprog med en indbygget ZIP-pakker (udpakker!)  (eksempelvis) som Claes57 op pstidsen foreslår.

Når den relevante dato er aktuel vil koden checke om datoen er korrekt, pakke "fødselsdagshilsenen" ud, "poppe" den op på skærmen og VIOLA (fransk for VOILA) har din ven sin "hilsen".

(En svaghed vil dog være, at dersom din ven har en ide om hvad løsningen er, kan han sætte datoen frem (tilbage ?), køre programmet og så får han hilsenen alligevel ).


Men det forudsætter naturligvis også at han har den liggende som en fil som automatisk eksekveres ved opstart. Ellers må han fysisk selv starte den.

(PS: Jeg kan godt lide den ide... ! )

Kristian
Avatar billede claes57 Ekspert
18. maj 2014 - 16:43 #4
Så må der næsten kunne laves en samlet løsning i vbs, og bare kompilere til exe-fil, så modtager ikke kan se kildekoden. Og evt hente dato fra nettet.
18. maj 2014 - 18:46 #5
HEJ,

Fortrinlig ide at hente DATO externt.

Pseudokode kunne da være (noget som):

  if (hente_extern_dato() = FAST_VALG_DATO) then
      BEGIN
        UDPAK_ZIP_VEDHÆNG_TIL_FIL('hilsen.exe');
        eksekver_fil('hilsen.exe');
(*      Slet_alle_involverede_filer( 2 stk ** hvis behov );  *)

      END
  ELSE
      BEGIN 
        IF NOT ZIP_VEDHÆNG_EXISTS() then
            CREATE_ZIP_VEDHÆNG();
      END;

Altså:  Forudsætning(er):
Hilsenen sendes XX dage FØR selve dagen og køres MINDST EEN gang før "hilsen-dato" . 

Kort beskrivelse (mest til Husejeren )  :-)

"VI" checker på dato. Da kørslen sker FØR aktuelle ("rigtige")  dato vil 1. betingelse være falsk og "vi" hopper ned hvor "vi" checker om hilsenen eksiststerer. Det gør den (naturligt nok) ikke ved første kørsel og "vi" opretter denne hilsen som et ZIP-VEDHÆNG med CREATE_ZIP_VEDHÆNG(); 

Næste gang "vi kører og det stadig ikke er dagen sker der intet fordi ZIP-vedhænget nu eksisterer. Først når dagen er dagen vil ZIP-vehænget udpakkes med  (UDPAK_ZIP_VEDHÆNG_TIL_FIL('hilsen.exe') til filen "HILSEN.EXE" og i næste trin køres samme fil. Eftre kørslen kan begge filer slettes (hvis behov )...

Koden er meget forenklet og vil KUN vise rigtigt på selve dagen. Dagene før og efter selv dagen vil intet vises - (forslag til forbedringer ??? )

Kristian
Avatar billede Husejer Nybegynder
19. maj 2014 - 12:12 #6
Hej Kristian, Claes og andre.....
Det ser da interessant ud.... det skal jeg vist lege lidt med.

Tak for de fine svar.

vh

Husejeren
19. maj 2014 - 12:27 #7
HEJ (igen),

Kom til at tænke på:

HVIS du laver filen og "bare" sender som en EXE fil - kan du i den endelige udgave stryge hele den nederste del af min pseudo kode -
altså denne deL :

  ELSE
      BEGIN
        IF NOT ZIP_VEDHÆNG_EXISTS() then
            CREATE_ZIP_VEDHÆNG();
      END;

-- bare til din  behagelige orientering...

KR
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester