Avatar billede cyberper Nybegynder
20. januar 2006 - 14:48 Der er 9 kommentarer og
1 løsning

.net program skal have adgang til outlook

Er der nogen der har erfaring med at programmere op mod microsoft outlook.

Jeg har lavet en ugeoversigt over en række menneskers aftale i løbet af denne uge.

fungere fint, MEN jeg skal svare på en popupbox for hvert medlem.

microsoft outlook kommer med denne besked.
Et program forsøger at få adgang til de e-mail-adresser som du har gemt i outlook. Vil du tillade dette .......

Er der nogen vej uden om det.
Jeg vil gerne sætte noget automatik i oversigten så den selv opdatere sig hvert kvarter. Men der er der jo ikke meget sjov ved hvis jeg selv skal trykke x antal gange hver gang.

Jeg har skrevet programmet i VB.net.

Nogen der kan hjælpe???
Avatar billede csvendsen Nybegynder
21. januar 2006 - 12:01 #1
Der findes et shareware-program ClickYes:
http://www.snapfiles.com/get/clickyes.html

Jeg mener også at have set en løsning med SendKeys.send
Kan ikke lige finde sidstnævnte. Sig til hvis det er denne løsning du foretrækker.
Det er vist på min arbejds-PC jeg har dette liggende.
Avatar billede cyberper Nybegynder
23. januar 2006 - 09:17 #2
til Csvendsen

Åbner den for alle 3d. programmer eller kan man selv bestemme hvilke der har adgang?

cp
Avatar billede cyberper Nybegynder
23. januar 2006 - 15:15 #3
Tager jeg meget fejl.

Kan det ikke lade sig gøre selv at lave en makro der reagere på henvendelse fra mit program og så automatisere "ja" tykkene.

- cp
Avatar billede csvendsen Nybegynder
24. januar 2006 - 18:11 #4
Har fundet dette vbscript. Det er til at sende e-mail fra vb via Outlook, men kan nok tilrettes:

Private Sub VBSScriptRun()
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set fsoFile = fso.createtextfile("ByPass.vbs")
  fsoFile.writeline "set fso = createobject(""WScript.Shell"")"
  fsoFile.writeline "While fso.AppActivate(""Microsoft Outlook"") = FALSE"
  fsoFile.writeline "wscript.sleep 1000"
  fsoFile.writeline "Wend"
  fsoFile.writeline "fso.SendKeys ""a"", True"
  fsoFile.writeline "fso.SendKeys ""y"", True"
  fsoFile.writeline "wscript.sleep 7000"
  fsoFile.writeline "While fso.appactivate(""Microsoft Outlook"") = False"
  fsoFile.writeline "wscript.sleep 1000"
  fsoFile.writeline "Wend"
  fsoFile.writeline "fso.sendkeys ""y"", True"
  fsoFile.Close
  Set wshShell = CreateObject("Wscript.Shell")
  wshShell.Run ("ByPass.vbs")
End Sub
Avatar billede cyberper Nybegynder
25. januar 2006 - 14:22 #5
Nu er jeg ikke helt inde i VBscripts i filen, men kan du se om denne her kode vil virke.


Private Sub VBSScriptRun(antal as integer)
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set fsoFile = fso.createtextfile("ByPass.vbs")
  fsoFile.writeline "set fso = createobject(""WScript.Shell"")"
  fsoFile.writeline "While fso.AppActivate(""Microsoft Outlook"") = FALSE"
  fsoFile.writeline "wscript.sleep 1000"
  fsoFile.writeline "Wend"
  fsoFile.writeline "set t as integer"
  fsoFile.writeline "While t < " & antal + 10 &"""
  fsoFile.writeline "fso.SendKeys ""y"", True"
  fsoFile.writeline "wscript.sleep 1000"
  fsoFile.writeline "t = t + 1"
  fsoFile.writeline "Wend"
  fsoFile.Close
  Set wshShell = CreateObject("Wscript.Shell")
  wshShell.Run ("ByPass.vbs")
end sub

Ved du hvor bypass.vbs bliver gemt og kan jeg slette den igen. fx i slutningen af denne sub.
Avatar billede csvendsen Nybegynder
25. januar 2006 - 19:42 #6
Umiddelbart ser det ok ud, men prøv at indsætte nogle ekstra linier:
wscript.echo "Linie 1" osv., og kør det manuelt, så kommer en pop-up med hvor langt du kommer, hvis der skulle være fejl.
ByPass.vbs bliver gemt i mappen hvor vb-programmet afvikles fra. Bliver overskrevet næste gang subrutinen kaldes, men kan jo også slettes efter kørsel.
Avatar billede cyberper Nybegynder
26. januar 2006 - 11:51 #7
Denne kode virke som jeg ønsker det.

Næææsten. den vil ikke slette filen igen?

Private Sub VBSScriptRunByPassOL(ByVal antal As Integer, ByVal antalOpstartKald As Integer)
        ' For at bruge dette scribt indsæt flg.
        ' Me.VBSScriptRunByPassOL(vMedarbejder.Length)
        Dim fso = CreateObject("Scripting.FileSystemObject")
        Dim fsoFile = fso.createtextfile("ByPassO.vbs") ' gemmes her : C:\Documents and Settings\jabm\My Documents\Visual Studio Projects\HvemErHvorApplication\bin
        fsoFile.writeline("set fso = createobject(""WScript.Shell"")")
        fsoFile.writeline("While fso.AppActivate(""Microsoft Outlook"") = FALSE")
        fsoFile.writeline("wscript.sleep 1000") ' 1000 = 1 sek.
        fsoFile.writeline("Wend")
        fsoFile.writeline("dim t")
        fsoFile.writeline("t = 0")
        fsoFile.writeline("While t < " & ((antal * 2) + antalOpstartKald).ToString)
        fsoFile.writeline("fso.SendKeys ""j"", True") ' "j" da det er dansk
        fsoFile.writeline("wscript.sleep 1000") ' 1000 = 1 sek.
        fsoFile.writeline("t = t + 1")
        fsoFile.writeline("Wend")
        fsoFile.Close()
        Dim wshShell = CreateObject("Wscript.Shell")
        wshShell.Run("ByPassO.vbs")
        ' hvis denne fil "ByPassO.vbs" skal slettes kan det gøres med linien
        fsoFile.delete
    End Sub
Avatar billede csvendsen Nybegynder
27. januar 2006 - 05:41 #8
Hvad kommer den med af fejlmelding. Prøv med try, catch.....
Jeg tror det er fordi du forsøger at slette scriptet inden det er afviklet færdigt.
Kan ikke lige huske om vb fortsætter i programkoden efter wshShell.run
Mener at man kan kalde det på en måde, så vb-programmet først fortsætter med næste linie når scriptet er kørt.
Ellers kan du beregne antal sekunder det tager at køre scriptet og så først slette det herefter.
Avatar billede cyberper Nybegynder
27. januar 2006 - 11:24 #9
det med fejl fordi scriptet ikke er færdig. giver god mening:)
Avatar billede cyberper Nybegynder
25. april 2006 - 15:02 #10
1000 tak for hjælpen. lukker
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
Kategori
Kurser inden for grundlæggende programmering

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