Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

που "βόσκει" τελικά το gacutil.exe!?

Îåêßíçóå áðü ôï ìÝëïò Johnnyxp64. Τελευταία δημοσίευση από το μέλος darklynx στις 26-03-2011, 20:49. Υπάρχουν 19 απαντήσεις.
Σελίδα 1 από 2 (20 εγγραφές)   1 2 >
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  22-03-2011, 22:32 64477

    που "βόσκει" τελικά το gacutil.exe!?

    μετα απο  ψαξιμο και διαφορα forums βλεπω οτι το gacutil.exe (που θελω να καλέσω για χρήση να εγκατασησω καποια dll) ειναι αναλογα το visual studio veriosn + net framework versiοn σε διαφορετικά σημεία!

    εμενα ειναι στο C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin

    και το ερωτημα, μπως μπορω να βρω σιγουρα σε οποιοδηποτε μηχανιμα που ειναι το ατοιμο το εργαλειο και να το καλω μεσα απο κωδικα μου?

    εψαξα και στην registry και βρηκα μονο 2 κλειδια, 


    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components\0264294E62946144B8D4F641EF514A97]
    "28139C926F4357231AD895238615DC75"="C:\\Program Files\\Microsoft SDKs\\Windows\\v6.0A\\bin\\x64\\gacutil.exe"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components\F4CC0CD5579DE104C8161EC3A61741F2]
    "28139C926F4357231AD895238615DC75"="C:\\Program Files\\Microsoft SDKs\\Windows\\v6.0A\\bin\\gacutil.exe"

    και η ερωτηση, μπορω να τα εμπιστευτώ αυτα τα κλειδια να κανω τον κωδικα μου να κοιτα εκει και να περνω το path ή δεν ειναι standar?
    ποιος ειναι ο καλύτερος τροπος και ασφαλέστερος να το κανω αυτο? (οχι δεν θελω να κανω καποιο deploy me setup ktl και να το κανει αυτοματα) θελω custom λυση για custom αναγκη. Υπάρχει? Huh?

    τα φωτα σας παρακαλω!
    ευχαριστω.

    υ.γ θα μπορουσα να εχω ενα αντιγραφω του δικου μου utility και να το καλω να κανω την δουλεια μου? θα παιζει παντου αραγε?

    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
  •  22-03-2011, 22:59 64479 σε απάντηση της 64477

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Θα παίζει....δεν νομίζω να έχεις πρόβλημα!



  •  22-03-2011, 23:04 64480 σε απάντηση της 64477

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Ερώτησεις:

    • Γιατί δεν χρησιμοποιείς ένα installer; Θα το κάνει το register στο GAC για σένα...
    • Ο χρήστης που θα πρέπει να τρέχει την εντολή για να βάλει το assembly στο GAC θα πρέπει να έχει elevated privileges, και να είναι administrator - πιστεύεις ότι η εφαρμογή που θα περιέχει αυτό το κώδικα έχει και τα δύο αυτά δικαιώματα;
    • Μπορείς να περιγράψεις το σενάριο που υλοποιεί η εφαρμογή σου και θέλεις να υλοποιήσεις αυτή την λειτουργία;

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  23-03-2011, 00:19 64486 σε απάντηση της 64480

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    George J. Capnias:

    Ερώτησεις:

    • Γιατί δεν χρησιμοποιείς ένα installer; Θα το κάνει το register στο GAC για σένα...
    • Ο χρήστης που θα πρέπει να τρέχει την εντολή για να βάλει το assembly στο GAC θα πρέπει να έχει elevated privileges, και να είναι administrator - πιστεύεις ότι η εφαρμογή που θα περιέχει αυτό το κώδικα έχει και τα δύο αυτά δικαιώματα;
    • Μπορείς να περιγράψεις το σενάριο που υλοποιεί η εφαρμογή σου και θέλεις να υλοποιήσεις αυτή την λειτουργία;

     

    George J.


    • δεν είναι σενάριο deployment πρέπει να κάνω modify κάποια GAC assemplies (install/uninstall) σε runtime.
    • ναι αυτό το έχω ξεπεράσει θα τα έχει αλλιώς δεν προχωράει η εφαρμογή.
    • λυπούμε αλλά όχι.


    Τάσκος Γιώργος:
    Θα παίζει....δεν νομίζω να έχεις πρόβλημα!


    ποιο απο τα 2 πιστευεις? τα κλειδιά ή να έχω το .exe το δικο μου?


    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
  •  23-03-2011, 00:45 64489 σε απάντηση της 64477

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Γιάννη, μάλλον αυτό που προσπαθείς να κάνεις δεν είναι τόσο απλό. Το gacutil.exe "έρχεται" με το .NET Framework 1.0, 1.1 ή βρίσκεται στο directory που είναι εγκατεστημένο το SDK (εδώ). Έχω την εντύπωση ότι για να κάνεις αυτό που θέλεις προγραμματιστικά, θα πρέπει να ρίξεις μια ματιά σ' αυτή τη συζήτηση. Εκτός, βέβαια, αν κάνεις install το SDK σε κάθε μηχάνημα...

    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  23-03-2011, 01:19 64491 σε απάντηση της 64486

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Έπεσα πάνω στο άρθρο "Managed Fusion" που είναι νεότερο και ίσως σε βοηθήσει ο κώδικάς του. Πάντως, καλού κακού αναπαράγω το εξής:

    Caution: Do not use these APIs in your application to perform assembly binds or to test for the presence of assemblies or other run time, development, or design-time operations. Only administrative tools and setup programs must use these APIs. If you use the GAC, this directly exposes your application to assembly binding fragility or may cause your application to work improperly on future versions of the .NET Framework.

    (Η προειδοποίηση υπάρχει και στο MSDN).

    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  23-03-2011, 09:35 64495 σε απάντηση της 64491

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Να προσθέσω κι εγώ, ότι η αντικατάσταση των assemblies (ή οποιουδήποτε binary) μίας εφαρμογής ανήκει 100% στην κατηγορία deployment? Τα setup και τα patches υπάρχουν ακριβώς γι αυτό το λόγο, για να αντικαθιστούν παλιά binaries με ασφάλεια.

    Johnny, ακόμα δεν περιέγραψες το σενάριο αλλά πως νομίζεις ότι θα δουλέψει. Γιατί θέλεις να πειράξεις το GAC αλλά να μην φτιάξεις setup? Τί προσπαθείς να κάνεις? Αν θέλεις π.χ. θέλεις να φορτώνεις plugins δυναμικά, μπορείς άνετα να τα βάλεις στο ίδιο folder με το exe σου. Άσε που με το MEF τα πράγματα είναι ακόμα πιο εύκολα. Αν θέλεις να αλλάξεις τα dll ενός web site μπορείς να σβήσεις τα παλιά και να αντιγράψεις τα καινούρια μέσα στο GAC με τον Windows Explorer.

    Τί θέλεις να κάνεις πραγματικά?


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  23-03-2011, 12:05 64513 σε απάντηση της 64495

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    παιδιά αρχικά σας ευχαριστώ πολυ για το ενδιαφέρωνYes
    αλλά σεβαστητε το οτι δεν μπορω να πω ακριβώς το εργο τι κανει ή πρεπει να κανει!Zip it!

    ξερω οτι θα βοηθουσε παρα πολυ αλλα δεν μπορώ!

    το καλητερο που μπορω να κανω ειναι να δωσω καποιες πληροφοριες και ενα γενικο σεναριο!

    λοιπον ας παρουμε τα πραγματα απο την αρχη και χτες ηταν αργα οταν τα εγραφα ξεχασα καποια θεματα.Sleep
    το εργο ειναι Addin του Visual Studio!
    αρα πρεπει να εχεις καποιος Visual Studio!
    αρα θα εχει και SDK καπου!???
    τωρα αυτο το addin αντιλαμβάνεται ήδη  ποτέ πάει να κανει build μια εφαρμογή.
    λιγο πριν κανει το Build ομως θελω να κανω uninstall ενα GAC και να το αντικαθηστω με ένα αλλο που θα συμπερηφεραιτε "διαφορετικα" οταν θα κανω μετα deploy την εφαρμογή μου.
    για αυτο ρωτω κατα ποσο ειναι δυνατον να κανω κατι τετοιο....Α το gac αυτο φυσικα και το εχει κανει ιδι load το visual studio ομως! 
    θα μπορεσω εγω να το αντικαταστησω να κανω το build που θελω με αλλο dll στην θεση του που θα κανει κατι ιδικο στην εφαρμογήν μου (δεν μας ενδιαφέρει τι)
    και μετα να το αντικαταστήσω  πάλι πίσω στο GAC οπως ηταν οταν ανοιξε το visual studio, ωστε ο προγραμαμτιστης να εχεις αλλες δυνατοτητες στο VS.

    ζηταω πολλα ε?Huh?

    φυσικα τα assemply names θα ειναι τα ιδια.

    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
  •  23-03-2011, 12:36 64518 σε απάντηση της 64513

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Δεν έχω ασχοληθεί με addins. Δεν μπορείς να βάλεις ένα αντίγραφο ως resource στο δικό σου project και να το χρησιμοποιείς κατά βούληση; Το έχω κάνει κατά καιρούς με διάφορα command line εργαλεία.
    "When the darkness rises up from inside - that is normal.
    It's when you reach down to pull it up - that the noxious warnings sound."
    Tuzak, Farscape
  •  23-03-2011, 13:48 64528 σε απάντηση της 64513

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Johnnyxp64:

    φυσικα τα assemply names θα ειναι τα ιδια.

    Το assembly name μπορεί να είναι το ίδιο αλλά για να μπει κάτι στο GAC πρέπει να είναι signed και το signing έχει να κάνει με τα περιεχόμενα, μιλάμε δηλαδή για strong-named assemblies. Άρα έτσι απλά που το πας, δεν το βλέπω να πετυχαίνει...

     


    Vir prudens non contra ventum mingit
  •  23-03-2011, 14:34 64529 σε απάντηση της 64528

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    KelMan:
    Johnnyxp64:

    φυσικα τα assemply names θα ειναι τα ιδια.

    Το assembly name μπορεί να είναι το ίδιο αλλά για να μπει κάτι στο GAC πρέπει να είναι signed και το signing έχει να κάνει με τα περιεχόμενα, μιλάμε δηλαδή για strong-named assemblies. Άρα έτσι απλά που το πας, δεν το βλέπω να πετυχαίνει...


    αν σας ελεγα οτι strong-named assemblies ειναι ακριβως τα ιδια!? ιδιο μεγεθος κτλ και η διαφορα ειναι τετοια που δεν επηρεαζει το strong name...
    εστω ας μην γινεται με τον "εύκολο" ποιος ειναι ο "δυσκολος" τροπος? αρκει να γινεται!Embarrassed

    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
  •  23-03-2011, 15:15 64531 σε απάντηση της 64529

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Πως μπορεί να είναι ακριβώς τα ίδια; Ένα byte να έχει αλλάξει και το hash του signature θα είναι διαφορετικό. Ρίξε μια ματιά εδώ http://msdn.microsoft.com/en-us/library/wd40t7ad.aspx

    Ο "δύσκολος" τρόπος (που είναι πολύ εύκολος - μερικά κλικ σε ένα setup project) είναι να χρησιμοποιήσεις ένα MSI.


    Vir prudens non contra ventum mingit
  •  23-03-2011, 15:43 64532 σε απάντηση της 64531

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    KelMan:

    Ο "δύσκολος" τρόπος (που είναι πολύ εύκολος - μερικά κλικ σε ένα setup project) είναι να χρησιμοποιήσεις ένα MSI.

    δεν παιζει αυτο λογο σεναριου οπως γραφω παραπανω, δεν μπορω να τρεχω setup μεσα απο addin να κανει αυτη την δουλεια καθε φορα που κανει ενα project build!
    αμα τα strong names ειναι διαφορετικα τι πειραζει? αφου το αλλο θα αντικατασταθει εντελος.... περα απο το αν θα εχω τα αποτελεσματα που θελω, το αρχικο ερωτημα παραμενει! ποιος ειναι για το σεναριο που γραφω λιγο ποιο πάνω ο καλύτερος τρόπος να εντοπίσω το utility και μετα να προσπαθήσω να κανω αυτο το swapping.....

    και ακομα αν ξερουμε αν το visual studio οσο απλα ειναι ανοικτο δεν κανει build, "δεσμευει" τα GACs? δηλαδη αμα παω και κανω uninstall (δεν το εχω δοκιμασει και λεω να ρωτησω πριν κανω καμια γκαφα) ενα GAC την ωρα που ειναι απλα ανοιχτο το VS θα το κανει η θα πει "μπιπ i am in use"Stick out tongue....αυτο ειναι το σταδιο 2.



    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
  •  23-03-2011, 15:49 64534 σε απάντηση της 64513

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    Johnnyxp64:

    ...
    τωρα αυτο το addin αντιλαμβάνεται ήδη  ποτέ πάει να κανει build μια εφαρμογή.
    λιγο πριν κανει το Build ομως θελω να κανω uninstall ενα GAC και να το αντικαθηστω με ένα αλλο που θα συμπερηφεραιτε "διαφορετικα" οταν θα κανω μετα deploy την εφαρμογή μου.


    Τώρα μπαίνω κι εγώ στον πειρασμό να ρωτήσω: Τι ακριβώς θέλεις να κάνεις; Αντιλαμβάνομαι ότι δυσκολεύεσαι να απαντήσεις (ίσως να δεσμεύεσαι κιόλας), αλλά κάτι μου λέει ότι πρέπει να υπάρχει κι άλλος τρόπος για να κάνει το addin αυτά που ζητάς.


    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  23-03-2011, 16:53 64536 σε απάντηση της 64534

    Απ: που "βόσκει" τελικά το gacutil.exe!?

    sorry  είπα δεν μπορώ να πω άλλα, εχω περιγράψει πλήρως τι πρέπει να γίνει, το θέμα είναι αν γίνεται το γιατί πρέπει να γίνει δεν εχει καμία απολύτως σημασία για την ερώτηση δεν θέλω να πω τι σκοπεύω να κάνω ώστε να μου προτείνετε άλλες πιθανές λύσεις γιατί απλα, αυτό που πρέπει να κάνω γίνεται μόνο έτσι και αυτό είναι σίγουρο 1000% το έχω δει σε αντίστοιχο έργω αλλά δεν μπορώ να δω κώδικα ούτε να βρω τους σχεδιαστές του να τους ρωτήσω! Sad

    αναγκαστηκα μεχρι καποιος να μου δωσει μια "σίγουρη" απάντηση να δοκιμάσω να κανω πειράματα και να στέλνω σε χρήστες vs αυτο που θελω με διαφορες εκδοσεις να παρω feedback......
    και ο θεος βοηθος....

    thank you all so far i am waiting for any proven working solution ;-)

    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
Σελίδα 1 από 2 (20 εγγραφές)   1 2 >
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems