অ্যাডোব এয়ারের বর্তমান ব্যবহারকারী লগ ইন করুন

আমার এয়ার / ফ্লেক্স অ্যাপ্লিকেশনে আমি বর্তমান লগ ইন ব্যবহারকারীর নামের প্রয়োজন। অ্যাপ্লিকেশন শুধুমাত্র উইন্ডোজ মেশিনে স্থাপন করা হবে। আমি মনে করি আমি ব্যবহারকারী ডিরেক্টরি regexing দ্বারা এটি অর্জন করতে পারে, কিন্তু অন্যান্য উপায় খোলা।

0
ro fr hi

5 উত্তর

আমিও চেষ্টা করবো:

File.userDirectory.name

কিন্তু আমি এয়ার ইনস্টল না তাই আমি সত্যিই এই পরীক্ষা করতে পারবেন না ...

0
যোগ
জয় 7 আমার জন্য কাজ করে
যোগ লেখক Ilyssis, উৎস
উইন্ডোজ এক্সপি তে পুরোপুরি জরিমানা কাজ করে। এটা ভিস্তা, উইন্ডোজ 7 এবং আইম্যাকের জন্য একই প্রদান করবে?
যোগ লেখক midhunhk, উৎস

এখানে একটি সমাধান যা এক্সপি / ভিস্তা কাজ করে, কিন্তু OSX, লিনাক্সে স্পষ্টভাবে স্পষ্ট হয়, আমি এখনও আরেকটি উপায় আগ্রহী।

public static function GetCurrentOSUser():String{
    // XP & Vista only.
    var userDirectory:String = File.userDirectory.resolvePath("").nativePath;
    var startIndex:Number = userDirectory.lastIndexOf("\\") + 1
    var stopIndex:Number = userDirectory.length;
    var user = userDirectory.substring(startIndex, stopIndex);

    return user;
}
0
যোগ
লিনাক্সে কাজ করার জন্য "\\" ফাইল। সেপারেটর প্রতিস্থাপন করতে চান।
যোগ লেখক Kevin, উৎস

পরে আপডেট করুন: আসলে একটি বিদ্যমান ব্যবহারকারীর পেতে ফাংশন নির্মিত আছে। আমি এটা নেটিভ অ্যাপ্লিকেশন মধ্যে মনে করি।

0
যোগ
আমি বর্তমান ব্যবহারকারীকেও পেতে চাই, কিন্তু সেই ফাংশনটি খুঁজে পাচ্ছি না ... আপনি কি সমাধান ভাগ করতে পারেন?
যোগ লেখক Cosma Colanicchia, উৎস

আপনি করতে পারেন ছোট পরিষ্কারের একটি দম্পতি আছে ...

package
{
    import flash.filesystem.File;

    public class UserUtil
    {
        public static function get currentOSUser():String
        {
            var userDir:String = File.userDirectory.nativePath;
            var userName:String = userDir.substr(userDir.lastIndexOf(File.separator) + 1);
            return userName;
        }
    }
}

কেভিনের পরামর্শ অনুযায়ী, ডাইরেক্টরি বিভাজন ক্রস-প্ল্যাটফর্ম (শুধু উইন্ডোজ এবং ম্যাক ওএস এক্স-এ পরীক্ষা করা) করার জন্য ফাইল.সেপেরার ব্যবহার করুন।

আপনি যদি একটি শিশু খুঁজছেন না, তাহলে সমাধানপথ ("") ব্যবহার করতে হবে না।

এছাড়াও, একটি ফাংশন তৈরীর একটি সঠিক পরিচারক ছাড়া অন্য কাজ বাঁধাই করতে পারবেন।

উপরের উদাহরণে আমি এটি UserUtil শ্রেণীর মধ্যে রাখি, এখন আমি UserUtil.currentOSUser এ যুক্ত করতে পারি, যেমন:

<?xml version="1.0" encoding="utf-8"?>

     

0
যোগ

এটি সবচেয়ে সুন্দর পদ্ধতি নয়, তবে আপনি যদি জানেন যে আপনার এআইআর অ্যাপ্লিকেশন শুধুমাত্র একটি উইন্ডোজ পরিবেশে চালানো হবে তবে তা যথেষ্ট পরিমাণে কাজ করে:

public var username:String;

public function getCurrentOSUser():void
{       
   var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();  
   var file:File = new File("C:/WINDOWS/system32/whoami.exe");
   nativeProcessStartupInfo.executable = file;

   process = new NativeProcess();       
   process.addEventListener(ProgressEvent.STANDARD_OUTPUT_DATA, onOutputData);
   process.start(nativeProcessStartupInfo);
}

public function onOutputData(event:ProgressEvent):void
{           
   var output:String = process.standardOutput.readUTFBytes(process.standardOutput.bytesAvailable);
   this.username = output.split('\\')[1];
   trace("Got username: ", this.username);
}
0
যোগ