Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBA-Projekt - Quellcode schützen

Frage Entwicklung VB for Applications

Mitglied: 106543

106543 (Level 2)

21.01.2013, aktualisiert 10:14 Uhr, 8598 Aufrufe, 10 Kommentare

Hi Leute,

ich hätte gerne gewusst, ob man den Quellcode von VBA irgendwie schützen kann, sodass kein Unbefugter diesen Auslesen kann o.Ä.
Es geht mir hierbei nicht um irgendwelche Programme welche den Quellcode dann auslesen sondern eher darum, dass bisher jeder User den Quellcode und auslesen und bearbeiten kann
Vielleicht hat ja schon jmd. von euch Erfahrungen damit gemacht.

Grüße
Exzellius

[EDIT]
Ok einiges googlen bin ich schlauer xD
also Passwortschützen ist kein Problem
nun würde ich gerne wissen, ob es möglich wäre, noch drastischere Methoden zu nehmen
[/EDIT]
Mitglied: mayho33
21.01.2013 um 11:12 Uhr
Im Visual Studio hast du die Möglichkeit dein Projekt in eine EXE umzuwandeln.
in VBS geht das z.B. mit VBSEDIT ganz easy per "Klick" auf "Convert into executable"
Auch einge Tools die im Internet zu finden sind können Code in eine Exe umwandeln VbsToExe z.B.
Du kannst eventuell auch in eine vbe umwandeln (nur VBS) was sich aber leicht rückgängig machen lässt.
Dotfuscator für VBA? Keine Ahnung aber eventuell gibts da was?
Bitte warten ..
Mitglied: 106543
21.01.2013 um 11:27 Uhr
Hey,

danke für die Mühe.
Ich wrd mich mal schlau machen.

Grüße
Exzellius
Bitte warten ..
Mitglied: Pjordorf
21.01.2013 um 11:58 Uhr
Hallo,

Zitat von mayho33:
in VBS geht das
Jepp.

@106543: Aber hier geht es um VBA was ja innerhalb der Anwendung (Excel, Word, Outlook etc) direkt läuft. Da ist es mit wandeln in eeiner .exe eben nicht möglich. Passwortschutz ja. Ansonsten den VBA Code komplett auslagern in einer DLL oder gar als eigenständige Applikation (was aber dann kein VBA mehr ist).

ob es möglich wäre, noch drastischere Methoden zu nehmen
Und wer sollten denn dein Geniereiches Werk sabotieren wollen? Das lässt sich doch auch nachteilig für den durchführenden nachweisen sprich wer mutwillig Firmeneigentum (Hier der funktionsfähige VBA Code) zerstört oder beschädigt muss mit Schadenersatzforderungen sowie weitere Konsequenzen rechnen, oder? Wenn du nicht willst das jemand auch nur Ansatzweise dein VBA lesen kann, dann eben kein VBA verwenden.

Gruß,
Peter
Bitte warten ..
Mitglied: 106543
21.01.2013 um 12:40 Uhr
Hallo Peter,

mir ist durchaus klar, dass mein "Geniereiches Werk" *Schmunzel* seltenst sabotiert werden sollte, allerdings ist exakt dies einem Kollegen von mir passiert, von daher wollte ich Schutzvorkehrungen treffen.
Was sollte ich denn anstatt von VBA verwenden, was dann deutlich sicherer wäre?
Es muss allerdings auf ähnlich einfache weise auf Excel zugreifen können etc.
Von daher war und ist für mich VBA die beste und einfachste Lösung.

Grüße
Exzellius
Bitte warten ..
Mitglied: mayho33
24.01.2013, aktualisiert um 11:52 Uhr
VBS kann auf Excel zugreifen. In genau dem Umfang wie VBA das auch kann (Gleiche Familie). Du must hat nur ein paar Objekte mehr erstellen am Anfang deines Codes und muss über diese Objekte dein Excel ansprechen. Nicht nennenswert umständlicher also meiner Ansicht nach.

Du hast sogar einen Vorteil mit VBS: Würdest du eventuell einbauen, dass nur Sheelts verwendet werden die in einem bestimmten Pfad liegen, könntest du damit jedes Sheet manipulieren das den Voraussetzungen entspricht. Und nicht nur das eine in dem dein VBA-Code steht.
Bitte warten ..
Mitglied: 106543
24.01.2013 um 12:09 Uhr
Hi mayho,

ok dann muss ich mich da mal reinarbeiten
mal sehen ob es viel umständlicher ist.
hast du da ein HowTo zur Hand ? Ich bin chronisch google-faul

Grüße
Exzellus
Bitte warten ..
Mitglied: Pjordorf
24.01.2013 um 13:33 Uhr
Hallo,

Zitat von 106543:
allerdings ist exakt dies einem Kollegen von mir passiert
Und der Passwortschutz ist nicht ausreichend gewesen oder war einfach keiner gesetzt? Das hält doch solche möchtegern "ich kann besser Programmieren als du und werde es jetzt tun" davon ab weiter als bis zur Passwortabfrage. Ansonsten im VBA eine Logging Funktion einbauen wer von welchen PC das ding wann geöffnet hat.

Gruß,
Peter
Bitte warten ..
Mitglied: Pjordorf
24.01.2013 um 13:38 Uhr
Hallo,

Zitat von mayho33:
VBS kann auf Excel zugreifen.
Als ergänzung noch. Fast jede Hochsprache kann auch auf Excel (Office Aobjekte) zugreifen. Auch ein .NET oder ein VisiualBasic, C# usw. Fragt sich nur was sinnvoller ist und was ich tatsächlich erreichen möchte mit welchem Aufwand.

Gruß,
Peter
Bitte warten ..
Mitglied: 106543
24.01.2013 um 14:07 Uhr
Zitat von Pjordorf:
Hallo,

> Zitat von 106543:
> allerdings ist exakt dies einem Kollegen von mir passiert
Und der Passwortschutz ist nicht ausreichend gewesen oder war einfach keiner gesetzt?

Hi,

bei ihm war kein Passwort drin, von daher dachte ich mir, man kann ja auch aus fremden Fehlern lernen
Bitte warten ..
Mitglied: mayho33
25.01.2013 um 17:00 Uhr
Zitat von Pjordorf:
Ansonsten im VBA eine Logging Funktion einbauen wer von welchen PC das ding wann geöffnet hat.

Naja, würde ich den Code eines Kollegen böswillig ändern wollen würde ich erstens das Sheet nicht vom Share aus öffnen sondern die Kopie davon ohne Netzwerkzugriff, zweitens würde jeder Zugriff geloggt werden, also auch das Öffnen des Excel.

und dazu:
Zitat von Pjordorf:
Fragt sich nur was sinnvoller ist und was ich tatsächlich erreichen möchte mit welchem Aufwand.

Nun wie er schon sagte will er seinen Code schützen. Darum muss er den Code wohl oder übel vom Excel auslagern. Dafür gibt es schier unerschöpfliche Möglichkeiten.

Ganz einfach ist es mit VBS, weil es sich von VBA durch sozusagen nichts unterscheidet

http://mahimavbscript.blogspot.co.at/2010/09/working-with-excel-object. ...
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Sicherheits-Tools
Anti-Schnüffler-Tool SAMRi10 soll Windows-Netzwerke schützen

Link von AnkhMorpork zum Thema Sicherheits-Tools ...

VB for Applications
Excel VBA Sortierung von Daten (5)

Frage von easy4breezy zum Thema VB for Applications ...

Microsoft Office
gelöst Excel-Formel oder VBA (7)

Frage von nicki01 zum Thema Microsoft Office ...

VB for Applications
gelöst VBA-Makro verschwindet nach Speichern (5)

Frage von lupi1989 zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...